请教一个正则表达式,在匹配 pattern1 的条件下,返回所有 pattern2 的字符串
資深大佬 : billgreen1 7
text1="worda wordb aaaa wordc wordd worde 10, 20 and 35." text2="wordf bbbbb wordg wordh 11, 20 and 35." text3="wordi 11, 33, 44."
要求是:当且仅当行中出现了 aaaa 这个字符串, 返回所有数字.
我尝试了以下方法:
import re re.findall(r'(?:aaaa).*(d+)', text1) # ['5'] re.findall(r'(?:aaaa).*?(d+)', text1) # ['10'] # 期待结果是["10", "20", "35"] # 虽然可以这样,但是我希望能有个一行的正则,而不是匹配 2 次 if re.findall("aaaa", text1): numbers = re.findall("(d+)", text1)
先行谢过啦~
大佬有話說 (2)