我想匹配由逗號分隔的三個字符的字母序列(只允許使用字母'a','b','c')(最後一個組不以逗號結尾)。重複序列的正則表達式
例子:
abc,bca,cbb
ccc,abc,aab,baa
bcb
我已經寫了下面的正則表達式:
re.match('([abc][abc][abc],)+', "abc,defx,df")
但是它不能正常工作,因爲上面的例子:
>>> print bool(re.match('([abc][abc][abc],)+', "abc,defx,df")) # defx in second group
True
>>> print bool(re.match('([abc][abc][abc],)+', "axc,defx,df")) # 'x' in first group
False
似乎只檢查第一組三個字母,但它忽略了其餘部分。如何正確編寫這個正則表達式?
你解釋清楚,正則表達式將需要在開始和結束錨,但不包括``^在您的解決方案。 – stema 2011-12-15 08:01:20
糟糕!謝謝,我會編輯它。 – Sonya 2011-12-15 08:07:39