當前位置:首頁 » 編程語言 » python正則表達式漢字

python正則表達式漢字

發布時間: 2022-11-04 04:32:48

python怎麼用正則表達式提取中文

Python re正則匹配中文,其實非常簡單,把中文的unicode字元串轉換成utf-8格式就可以了,然後可以在re中隨意調用
unicode中中文的編碼為/u4e00-/u9fa5,因此正則表達式u」[\u4e00-\u9fa5]+」可以表示一個或者多個中文字元
>>> import re

>>> s='中文:123456aa哈哈哈bbcc'.decode('utf8')
>>> s
u'\u4e2d\u6587\uff1a123456aa\u54c8\u54c8\u54c8bbcc'
>>> 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

from:http://blog.aizhet.com/web/12078.html

② python怎麼用正則表達式提取中文

1、字元串line='ufeffD0002044x01大數據x01數據分析x01技術x01工具x01應用 '
想提取出其中的「大數據」,「數據分析」,「技術」,「工具」,「應用」這些中文,用了正則表達式:
>>>pat2='x01(.*?)'
>>>rs=re.compile(pat2).findall(line)
>>>print(rs)
['','','','','']
顯示的結果是空,請問如何才能正確的提出中文部分。

2、原文: 法規名稱:'《中華人民共和國合同法》',Items:[{法條名稱:'第五十二條'
匹配成: 《中華人民共和國合同法》第五十二條
(?<=法規名稱:').*?(',Items:[{法條名稱:').*?(?=') 請問這樣匹配哪裡錯了?Python報sre_constants.error: unterminated character set at position 22

3、Python re正則匹配中文,其實非常簡單,把中文的unicode字元串轉換成utf-8格式就可以了,然後可以在re中隨意調用
unicode中中文的編碼為/u4e00-/u9fa5,因此正則表達式u」[u4e00-u9fa5]+」可以表示一個或者多個中文字元
>>> import re
>>> s='中文:123456aa哈哈哈bbcc'.decode('utf8')
>>> s
u''
>>> print s
中文:123456aa哈哈哈bbcc 。

③ python,用正則表達式匹配特定漢字

在Python的string前面加上『r』, 是為了告訴編譯器這個string是個raw string,不要轉意backslash '\' 。 例如,\n 在raw string中,是兩個字元,\和n, 而不會轉意為換行符。由於正則表達式和 \ 會有沖突,因此,當一個字元串使用了正則表達式後,最好在前面加上'r'。
在[]中
-長用來指定一個字元集,在這個字元集中的一個可以拿來匹配:[abc] [a-z]
-元字元在在字元集中不起作用
-在[]內用^表示補集,用來匹配不在區間范圍內的字元
s=r'aba' 匹配abc
s=r't[io]p' 匹配tip或者top
s=r't[a-z0-9A-Z]'匹配t+0-9或者a-z或者A-Z
[abc]表示「a」或「b」或「c」
[0-9]表示0~9中任意一個數字,等價於[0123456789]
[\u4e00-\u9fa5]表示任意一個漢字
[^a1<]表示除「a」、「1」、「<」外的其它任意一個字元
[^a-z]表示除小寫字母外的任意一個字元

④ python正則表達式中要匹配漢字怎麼弄

line = "000我是中國人111"
# matchMe = re.match("^[\u4e00-\u9fa5]+")
matchObj = re.match(r'.*([\u4e00-\u9fa5]+).*', line, re.L)
if matchObj:
print "matchObj.group() : ", matchObj.group()
print "matchObj.group(1) : ", matchObj.group(1)
print "matchObj.group(2) : ", matchObj.group(2)

else:
print "No match!!"

⑤ 如何用Python正則表達式去匹配漢字加字母加數字的字元串

# -*- coding: utf-8 -*-
import re
pattern = re.compile(r'[\'白\'\'藍\'\'綠\'\'黃\']{1}[A-Z]{1}[A-Z0-9]{5}')
match = pattern.match('黃A')
if match:
print "OK"
else:
print "not ok"

⑥ Python用正則表達式截取中文

像這樣

#!/usr/bin/envpython
#coding:utf8
importre
l=[
'1.1.2.5查',
'1.2.5詢',
'1.5查詢',
'1.5.3.4.51規則',
'1.133.2.5詢規',
]
r=re.compile(r'd+(.d+)*(.*)')
l=[r.match(e).group(2)foreinl]
print(l)

最後列印的就是

['查','詢','查詢','規則','詢規']

⑦ python正則表達式中\w居然能匹配漢字,請問是怎麼一回事

\w匹配的是能組成單詞的字元,在python3 中re默認支持的是unicode字元集,當然也支持漢字
如果要讓\w僅支持英文,加個re.A標志
print(re.findall(r"\w",s,re.A))
這樣就不會匹配漢字了

⑧ Python 求正則表達式匹配中文

#coding=utf-8

importre


string=u"""<代碼>書名1【精裝版】<代碼>
<代碼>書名2【豪華版版】<代碼>
<代碼>書名3<代碼>"""

fresult=re.findall(u">(.*?)[【|<]",string)


foriteminfresult:
printitem.encode("utf-8")

⑨ python正則表達式中要匹配漢字怎麼弄

這個比較的容易。有一個表達式。給你找一下。

re_han_cut_all=re.compile("([u4E00-u9FD5]+)",re.U)
re_han_detail=re.compile(u"([u4E00-u9FD5]+)")

兩個的功能應該是相同的。你需要先將字元串轉換成unicode

然後再使用表達式去匹配

⑩ python正則表達式中w居然能匹配漢字,請問是怎麼一回事

w匹配的是能組成單詞的字元,在python3
中re默認支持的是unicode字元集,當然也支持漢字
如果要讓w僅支持英文,加個re.A標志
print(re.findall(r"w",s,re.A))
這樣就不會匹配漢字了

熱點內容
安卓手機的音量在哪裡調 發布:2025-01-10 21:32:11 瀏覽:613
路由器怎麼設置登錄密碼怎麼設置密碼 發布:2025-01-10 21:11:12 瀏覽:893
營運車解壓 發布:2025-01-10 21:11:01 瀏覽:932
安卓是哪裡出產 發布:2025-01-10 21:10:23 瀏覽:953
本科來了安卓版叫什麼 發布:2025-01-10 21:08:43 瀏覽:649
南京c語言 發布:2025-01-10 20:55:08 瀏覽:466
如何excel設置密碼保護 發布:2025-01-10 20:50:07 瀏覽:994
桌面文件限制存儲大小 發布:2025-01-10 20:28:45 瀏覽:79
安卓車機怎麼把應用放界面 發布:2025-01-10 20:28:36 瀏覽:679
減演算法小學 發布:2025-01-10 20:22:41 瀏覽:799