我有一个很大的日志文件,我试图从使用 powershell 正则表达式中提取两条信息到一行。日志包含各种数据,但我感兴趣的块我在下面给出了示例。我正在尝试查找使用错误版本的应用程序登录的用户。
示例数据(预览中没有显示,但有换行符):
Device User Name: CDALLAS
Is SSO : false
Versions : id=VNF-Android
0=Client-Version,VN v4.82.1;android;SM-G900V,.
Device User Name: smith5
Is SSO : false
Versions : id=VNF-Android
0=Client-Version,VNNEXT v4.32,.
Device User Name: joe123
Is SSO : false
Versions : id=VNF-iOS
0=Client-Version,APPSTORE v5.89;iPhone OS;iPhone8 1,.
我需要为这些中的每一个返回的是:
CDALLAS 4.82.1
smith5 4.32
joe123 5.89
理想情况下,我想排除其中包含 4.82.1 的任何记录,因为这是正确的版本。
对于用户名部分,我可以使用类似(?<=Device User Name: )(.*)
我如何获得它旁边的版本号?
版本号总是以“Client-Version”(一些文本)“v”(版本号)开头,然后是 a 或 ;
正则表达式总是让我头疼。任何帮助将不胜感激。