2016-03-17 180 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$將產生一個匹配。