import re
text = " value='1',value='2',value='3' "
pattern = r"(?:value='\d+',){2}value='(\d+)'"
match = re.search(pattern, text)
print(match.group(1))
其中,(?:...)
表示非捕获组,{1}
表示匹配前面的模式一次。该正则表达式的含义是:匹配以value='
开头的字符串,后面跟着一个或多个数字,然后是逗号(,
),这个模式重复一次,接着是另一个以value='
开头的字符串,后面跟着一个或多个数字。
在这个正则表达式中,第一个value的匹配结果被忽略,只有第二个value的匹配结果会被捕获。因此,如果对于字符串value='1',value='2'
应用该正则表达式进行匹配,就可以得到一个捕获组的值为2
,即第二个value的值。