python 正则表达式的字符串变量匹配第一次出现
一般的如果是字符串直接加 ? 就可以了,但是如果是变量,加?就给报错了,请问这个时候我希望这个字符串变量出现一次或者不出现应该如何表示我的字符串是从文本读入的,所以不能直接用字符串表示,需要使用变量
pattern = re.compile(ch0+'.*'+( ch1 )+' *\d+\.\d+', re.S)
match=pattern.findall(logfragment
类似上文,我希望ch1 仅出现一次,但是这样会匹配最后一个符合要求的ch1,
我有大量的( ch1 )+' *\d+\.\d+' 数据,但是仅仅希望匹配ch0 下的第一个该数据,请问应该如何实现? 在 .* 后面加个 ? 试试 ch0+'.*'+'XXXX'
你这里的'.*'就造成贪婪匹配了。
页:
[1]