正則表達式[+-=]匹配出錯的問題

有一些坑要注意,比如:

s="()*+,-./0123456789:;<=>"
print(re.findall("[+-=]",s))
print(re.findall("[+\-=]",s))

輸出:

['+', ',', '-', '.', '/', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=']
['+', '-', '=']

[+-=]把ASCII碼錶中從+到=的所有字符都匹配了,在-前面增加了轉義\之後,才只匹配+-=。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章