問號匹配,帶元組規則的位置匹配不到

import re
text = u"本次上市流通的數量爲10000股"
sen1 = re.search(u"(上市流?通?)?", text)
sen2 = re.search(u"(上市流通)?", text)
sen3 = re.search(u"(上?市?流?通?)", text)
sen4 = re.search(u"上?市?流?通?", text)
sen5 = re.search(u"(上市流?通?)", text)
sen6 = re.search(u"(上市流?通?|上市流通)", text)
sen7 = re.search(u"(上市流通)?的數量爲", text)
print(sen1)
print(sen2)
print(sen3)
print(sen4)
print(sen5)
print(sen6)

運行結果如下:

<re.Match object; span=(0, 0), match=''>
<re.Match object; span=(0, 0), match=''>
<re.Match object; span=(0, 0), match=''>
<re.Match object; span=(0, 0), match=''>
<re.Match object; span=(2, 6), match='上市流通'>
<re.Match object; span=(2, 6), match='上市流通'>
<re.Match object; span=(2, 10), match='上市流通'>

說明元組()後面跟❓,最好❓後面還有其他字符;要匹配的詞不能全部帶❓,最好❓後面還有其他字符。可以改用 ‘|’ 表達式匹配。

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