可以使用什麼正則表達式來匹配僅由字符A,B或C組成的詞語?例如,正則表達式會捕獲ABCBACBACBABBABCC和A和B和C,但不會捕獲ABCD,ABC1等。Python正則表達式 - 僅包含A,B或C的匹配詞
2
A
回答
8
\b[ABC]+\b
?那樣有用嗎?
>>> regex = re.compile(r'\b[ABC]+\b')
>>> regex.match('AACCD') #No match
>>> regex.match('AACC') #match
<_sre.SRE_Match object at 0x11bb578>
>>> regex.match('A') #match
<_sre.SRE_Match object at 0x11bb5e0>
\b
是一個字邊界。因此,我們在此匹配任何字詞邊界,後面跟着只有A
,B
或C
個字符,直到下一個字邊界。
對於那些誰不喜歡正則表達式,我們可以在這裏使用set
對象,以及:
>>> set("ABC").issuperset("ABCABCABC")
True
>>> set("ABC").issuperset("ABCABCABC1")
False
0
你正在尋找的正則表達式爲r'\b([ABC]+)\b'
。
你可以編譯:
>>> regex = re.compile(r'\b([ABC]+)\b')
,然後你可以做一些事情吧:
>>> regex.match('ABC') # find a match with whole string.
>>> regex.search('find only the ABC') # find a match within the whole string.
>>> regex.findall('this will find only the ABC elements in this ABC test text') # find 2 matches.
如果你想忽略的話,那麼使用:
>>> regex = re.compile(r'\b([ABC]+)\b', re.I)
相關問題
- 1. Mod Rewrite正則表達式 - 匹配包含A但不包含B的url
- 2. 正則表達式匹配僅包含單詞
- 3. 「(」 A B C 「)」 或A B C - 匹配均衡包裝或沒有正則表達式
- 4. 匹配「a> b> c」模式的正則表達式?
- 5. 正則表達式:匹配所有包含單詞的單詞
- 6. 正則表達式匹配[^ a-z]或$
- 7. 如何正則表達式匹配a/b/c ...?
- 8. C++正則表達式匹配「+」量詞
- 9. 匹配包含正則表達式* _
- 10. 正則表達式a或b
- 11. 正則表達式A「或」 B
- 12. 正則表達式匹配包含句點perl的單詞
- 13. Perl正則表達式包含多個單詞的匹配行
- 14. 正則表達式匹配包含單詞'abc'的語句
- 15. 正則表達式匹配包含某些字母的單詞
- 16. 使用正則表達式匹配包含數字的單詞
- 17. 正則表達式匹配僅包含特定字符的整個單詞
- 18. 正則表達式匹配僅包含某些字符的整個單詞
- 19. 正則表達式匹配模式A和沒有圖案B
- 20. 正則表達式匹配時不包含單詞
- 21. 正則表達式匹配包含兩個詞
- 22. 正則表達式。是否可以匹配(a或b)和(a或c)和(a或d)而不是aaa?
- 23. JavaScript的正則表達式匹配「A \」 B「
- 24. 正則表達式!(A | B)例如不是(a或b)
- 25. 正則表達式(A或A或A和B),(A但不是B)
- 26. Perl如果正則表達式匹配A而不是正則表達式匹配B打印
- 27. PHP的正則表達式匹配詞
- 28. 正則表達式匹配後的詞
- 29. 如何匹配使用Java正則表達式既不包含A也不包含B的字符串?
- 30. 是否有正則表達式來匹配包含A但不包含B的字符串
謝謝你的作品! – user2104778