分别令p=p1~p4,运行下列代码,对运行结果进行分析。
import re
p1 = R'(\w)(?=.*\1)'
p2 = '(\\w)(?=.*\\1)'
p3 = '(\w)(?=.*\\1)'
p4 = '(\w)(?=.*\1)'
s = 'abcdcbabcdcbee'
p = p1
print(f"{p1}-->{re.findall(p, s)}")
p = p2
print(f"{p2}-->{re.findall(p, s)}")
p = p3
print(f"{p3}-->{re.findall(p, s)}")
p = p4
print(f"{p4}-->{re.findall(p, s)}")
运行结果和分析如下:
结果分析:P4“\1”前缺少一个“\”,无法正确得出想要的结果。