程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python正則如何匹配中文漢字

編輯: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(韓文)


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved