小編寫這篇文章的一個主要目的,主要是給大家去做一個解答,解答的內容主要還是python相關事宜,比如,可以用python正則表達式去匹配和提取中文漢字,那么,具體的內容做法是什么呢?下面就給大家詳細解答下。
python用正則表達式提取中文
Python re正則匹配中文,其實非常簡單,把中文的unicode字符串轉換成utf-8格式就可以了,然后可以在re中隨意調用
unicode中中文的編碼為/u4e00-/u9fa5,因此正則表達式u”[u4e00-u9fa5]+”可以表示一個或者多個中文字符
>>>import re >>>s='中文:123456aa哈哈哈bbcc'.decode('utf8') >>>s u'u4e2du6587uff1a123456aau54c8u54c8u54c8bbcc' >>>print s 中文:123456aa哈哈哈bbcc >>>re.match(u"[u4e00-u9fa5]+",s) <_sre.SRE_Match object at 0xb77742c0> >>>pat='中文'.decode("utf8") >>>re.search(pat,s) <_sre.SRE_Match object at 0x16a16df0> >>>newpat='這里是中文內容'.decode("utf8") >>>news=re.sub(pat,newpat,s) >>>print news
這里是中文內容:123456aa哈哈哈bbcc
python正則如何匹配中文漢字
正則表達式匹配中文漢字,在實際應用中十分常見。
比如:爬蟲網頁文本提取、驗證用戶輸入標準等。
以下面文本字符串為例,匹配出astr這個字符串中的所有漢字。
import re astr='''aaaaa何時when杖爾看see南雪snow,我me與梅花plum blossom兩白頭'''
下面介紹兩種方法(本文環境為python3)
一、使用Unicode編碼來匹配中文
常見的中文Unicode編碼范圍:u4e00-u9fa5
實現匹配代碼:re.findall(’[u4e00-u9fa5]’,astr)
import re astr='''aaaaa何時when杖爾看see南雪snow,我me與梅花plum blossom兩白頭''' res=re.findall('[u4e00-u9fa5]',astr)
print(res)
匹配結果:
二、直接使用中文漢字實現中文匹配
沒使用過可能還真不知道,中文匹配還可以這樣
實現匹配代碼:re.findall(’[一-龥]’,astr)
import re astr='''aaaaa何時when杖爾看see南雪snow,我me與梅花plum blossom兩白頭''' res=re.findall('[一-龥]',astr) print(res)
匹配結果:
注:其實這里“一”對應的Unicode編碼就是“u4e00”,“龥”(yù)對應的Unicode編碼就是“u9fa5”。
常見非英文字符Unicode編碼范圍:
u4e00-u9fa5(中文)
u0800-u4e00(日文)
uac00-ud7ff(韓文)
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家帶來一定幫助。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/128316.html
預編譯 import re re1 = re.compile(r元字符 組成的正則規則) # 元字符下面會說 re1.方法() # 方法下邊也會說 元字符: 表示普通字符: . # 除了 外 都可以匹配的到 d # 只匹配 純數字 0-9 D # 和 d相反, 除了數字全都匹配 ...
摘要:和均為非負整數,其中。如果之前至少個獲取的子表達式,則為后向引用。 注:本文轉自 摘取天上星的博客 PHP常用正則表達式 ^d+$ //非負整數(正整數+ 0) ^[0-9]*[1-9][0-9]*$ //正整數 ^((-d+)|(0+))$ //非正整數(負整數+ 0) ^-[0-9]*[1-9][0-9]*$ //負整數 ^-?d+$ //整數 ^d+(.d+)?$ ...
摘要:參考代碼地址四制作字體模板把自己最常接觸的漢字找出來之后,需要制作一套字體模板,這套字體模板的用處是讓手寫漢字后,順利的找到對應的漢字,這里需要依靠第三方網站提供的一些功能。 一、背景 筆者以前在網上看到有民間高手制作字體的相關事跡,覺得把自己的手寫字用鍵盤敲出來是一件很有意思的事情,所以一直有時間想制作一套自己的手寫體,前幾天在網上搜索了一下制作字體的方法,發現技術上并不是太難,結合...
摘要:能匹配中的,但不能匹配中的數量界定符符號定義是一個非負整數。則等價于和均為非負整數,其中。該方法接受一個正則表達式作為它的第一個參數。是一個非強制異常類,它表示一個正則表達式模式中的語法錯誤。 正則表達式及多語言操作指南 1. 正則表達式 正則表達式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個規則字符串,這個規則字符串用來表達對字符串的一...
摘要:能匹配中的,但不能匹配中的數量界定符符號定義是一個非負整數。則等價于和均為非負整數,其中。該方法接受一個正則表達式作為它的第一個參數。是一個非強制異常類,它表示一個正則表達式模式中的語法錯誤。 正則表達式及多語言操作指南 1. 正則表達式 正則表達式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個規則字符串,這個規則字符串用來表達對字符串的一...
閱讀 919·2023-01-14 11:38
閱讀 891·2023-01-14 11:04
閱讀 750·2023-01-14 10:48
閱讀 2039·2023-01-14 10:34
閱讀 956·2023-01-14 10:24
閱讀 835·2023-01-14 10:18
閱讀 506·2023-01-14 10:09
閱讀 583·2023-01-14 10:02