2016-03-17 133 views
-1

我只是对^与$的组合有点困惑。我明白

,它意味着分别开始和结束,然后()是指提取具体

有什么括号内。但是为什么在这个例子中不打印?请

帮忙解释一下。谢谢

if re.search('^(0|1)$', '0b'): 
    print 'yes' 
else: 
    print 'no' 
+2

正则表达式'^(0 | 1)$'将检查字符串是否只包含单个字符'0'或'1'。 – Tushar

+0

谢谢。我认为它从头到尾看起来0或1。现在我明白它看起来只有0或1的一个字符长度 –

回答

1

你的正则表达式匹配的第一个字符串的开始,那么无论性格01其次是字符串的结尾。由于您匹配的字符串在0之后有b,因此它不匹配。将正则表达式更改为^(0|1)b$将产生一个匹配。