我有一组要提取的值,但有些值后面可能有分号,有些则没有。尝试过(.*)\;?
,但似乎他们也提取了分号。我只想提取值。
值1:Xfdagb; 值2:Gegshb
谢谢!
答案 0 :(得分:0)
您的正则表达式(.*)\;?
与零个或多个字符匹配,后跟一个可选的分号。
.*
是贪婪的,匹配到该行的末尾。然后,它尝试匹配一个可选的分号,以使整行保持匹配。
如果您要提取Value 1: Xfdagb
和Value 2: Gegshb
,则可以使用一个否定的character class来匹配一次或多次不使用分号:
如果要提取值Xfdagb
和Gegshb
,则可以使用否定的字符类,并在捕获组中捕获值: