我正在尝试找到连续重复字母数字字符的匹配项。我正在尝试re.match("(\w)[\\1][\\1]",mystring)
,但它似乎不起作用(总是返回None)。我想说的是“无论括号中是否包含字母数字字母,请检查它是否连续两次出现在任何地方。”
最佳答案
足够近 :)
您可以使用re.findall
或re.search
:
mystring = 'abccd'
print re.findall(r'(\w)\1', mystring) # ['c']
使用
match
失败的原因是match
试图从字符串的开头查找匹配项,并且在字符串的开头没有这样的模式"(\w)[\\1][\\1]"
。如果要使用
match
,仍可以使用,但是它需要对捕获的组具有附加访问权限:mystring = 'abccd'
m = re.match(r'.*(\w)\1', mystring)
print m.group(1) # 'c'