2016-11-16 77 views
0

我想創建一個正則表達式,它匹配任何字符串與一些初始字母,空格或逗號後跟字符串'[編輯] 」。這是我寫的代碼:在python重新匹配待匹配的子字符串和任何後來它

if re.match(r'[A-Za-z ,]+\[edit\]', value): 
    print('ha') 
else: 
    print('na') 

它不給假陰性,這是它匹配字符串「香蕉[編輯],但它也符合‘香蕉[編輯]一個’。據我瞭解,它停止評估何時發現所需的子字符串,並返回一個匹配,當它不是。

我該如何編寫正則表達式,以便它不匹配'banana [edit] a'類型的任何字符串?

回答

3

只要做到:

if re.match(r'[A-Za-z ,]+\[edit\]$', value): 
           ^

這裏,$是指示字符串的結尾。

2

如果你希望你的表情後面的字符以使其不匹配,只需指定一個與特殊$字符的字符串的結尾:

if re.match(r'[A-Za-z ,]+\[edit\]$', ...