我在字符串匹配方面有问题。这与在aaabbbccc中匹配abbbc很相似,注意在aaa和ccc之间有不确定的字符数,我应该在其中匹配abbbc,只有一个a和一个c。我试图使用'a[\d\d]+?但是失败了,如果我坚持用'a@@@c'的格式来实现这个,怎么写呢?或者有其他正则表达式来实现它吗?你知道吗
>>> import re
>>> string = 'aaabbbccc'
>>> res = re.findall(r'a[\d\D]+?c', string)
>>> print(res)
['aaabbbc']
Tags:
嗯,
a(.)\1\1c
是一个更具体的a...c
,它要求所有三个点都是同一个字符。两者都将匹配aaabbbccc
中的abbbc
。但是第一个不匹配aaabbdccc
中的任何内容,而第二个匹配abbdc
。你知道吗您可以通过将“一个或多个任意项”
[\d\D]+?
拆分为“非a”然后“零个或多个任意项”[^a][\d\D]*?
来阻止中间部分从a
开始。你知道吗相关问题 更多 >
编程相关推荐