文章詳情頁
正則表達式 - 請問用 Python 如何匹配漢語拼音?
瀏覽:131日期:2022-06-30 09:24:43
問題描述
比如用正則表達式匹配出 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. utf-8 - python在windows命令行下生成文件亂碼問題,如何解決?3. javascript - react input file4. html5 - bootstrap修改樣式的問題5. javascript - 正則表達式 w只匹配出一個字母,若要匹配出一個單詞,怎么寫?6. css - input間的間距和文字上下居中7. thinkphp5.0.24+PHPExcel導出功能總是導出不了,請大佬們幫忙分析原因8. npm鏡像站全新上線9. android - 百度地圖模擬器上報錯10. 現在大家是用Mysql還是mariaDb?
排行榜
