文章詳情頁
正則表達式 - 請問用 Python 如何匹配漢語拼音?
問題描述
比如用正則表達式匹配出 shá 這個拼音。 ps:之前說的可能不明確,我用了 “ 比如 ” 兩字哈,就是待處理文本里有拼音,但是不知道具體拼音是什么,需要找出這些拼音,待處理文本會有 中文、拼音、符號(,。:之類的),所以請不要回答諸如re.search(u’shá’,text) 要正則哈,不是簡單固定的字符串。。。
問題解答
回答1:import reregex = re.compile(r’b[a-z]*[āáǎàōóǒòêēéěèīíǐìūúǔùǖǘǚǜüńň?ɑɡ]+[a-z]*b’)text = 'Thǐs ís à pìnyin abóut shá'm = regex.findall(text)print(m)
匹配結果:[’ís’, ’à’, ’pìnyin’, ’abóut’, ’shá’]沒有匹配第一個Thǐs,因為默認拼音都是小寫,排除了大寫。
回答2:你是要匹配所有合法的拼音嗎?
如果是,你去找個字典的拼音索引,把里邊的所有拼音全部 | 到一起就可以了。也只能這樣,因為拼音不是根據正則,或者其它某種機械的規則定義出來的。你想不漏又不多就只能這樣了,反正也沒多少個。
回答3:>>> import re>>> d=’shá’>>> data=’This is a pinyin about shá’>>> re.search(d,data)<_sre.SRE_Match at 0x404e308>
相關文章:
1. docker網絡端口映射,沒有方便點的操作方法么?2. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?3. docker gitlab 如何git clone?4. angular.js - angularjs的自定義過濾器如何給文字加顏色?5. 數據庫 - 使用讀寫分離后, MySQL主從復制延遲會導致讀不到數據嗎?6. javascript - 為什么js代碼后面報錯,會導致前面的代碼執行不了,我確定后面的部分和前面的部分沒有邏輯上的關聯。7. 請問一下,圖片上傳成功,但是后臺對應文件夾里面卻沒有圖片,這是什么原因?(已部署到服務器)8. Span標簽9. java - Eclipse:為何方法默認未顯示注釋,鼠標懸浮卻可以看到注釋呢?10. javascript - node安裝后,npm老是報不是內部命令,如何解決呢?
排行榜
