python中文匹配
A. python怎麼匹配中文英文數字下劃線組成的帳號
python_正則表達式_匹配中文_用戶名_中文字母下劃線減號python正則表達式匹配中文用戶名
python_正則表達式_匹配中文_用戶名_中文字母下劃線減號
python 正則表達式 匹配中文 用戶名 中文 字母 下劃線 減號
感覺python弄這種寫法u'string' ur'string',很sb阿。 語言設計關鍵字和寫法的時候,一定仔細考慮好,否則阿,後面就難改了。說來都是相通的,郁悶。
$amp;>amp;>amp;$gt; sys.getdefaultencoding()
'ascii'
$amp;>amp;>amp;$gt; reload(sys)
<mole 'sys' (built-in)>
$amp;>amp;>amp;$gt; sys.setdefaultencoding('utf8')
$amp;>amp;>amp;$gt; sys.getdefaultencoding()
'utf8'
$amp;>amp;>amp;$gt; keyword = '李'
$amp;>amp;>amp;$gt; re.search(ur"[\u4e00-\u9fa5]+",unicode(keyword,"utf-8"))
<_sre.SRE_Match object at 0xb73aff70>
B. python如何輸入輸出中文
1,在文件夾中新建一個test.py的文件。
2,點擊打開文件,輸入以下代碼:
#!/usr/bin/env
python
#
-*-
coding:
utf-8
-*-
print
u'中文測試正常'。
3,在文件夾下運行DOS界面。
4,輸入test.py並運行,即可成功輸入「中文測試正常」的中文字元。
C. python3 正則表達式如何實現中文模糊匹配替換並輸出
要使用正則表達式實現中文模型李糊匹配替換並輸出,你可以使用 Python 的 re 模塊。以下是一個示例代碼,讀取一個名為 input.txt 的文件,將其中的 "竹某嬋" 或 "竹嬋某" 替換為 "竹嬋嬋",然後將結果保存到一個名為 output.txt 的新文件中:
import re
# 定義一個函數來實現替換操作
def replace_pattern(match_obj):
return "竹嬋嬋"
# 讀取文件內容
with open("input.txt", "r", encoding="utf-8") as file:
content = file.read()
# 使用正則表達式進行模糊匹配替換
pattern = r"竹(?:某|嬋)(?:嬋|某)"
replaced_content = re.sub(pattern, replace_pattern, content)
# 將替換後的內容寫入新的文件
with open("output.txt", "w", encoding="utf-8") as file:
file.write(replaced_content)
在這個例子中,正則表達式 r"竹(?:某|嬋)(?:嬋|某)" 用於匹配 "竹某嬋" 或 "竹嬋某"。(?:...) 是一個非捕獲組,它表示匹配其中的任意一個字元,但不會捕獲該組。這里的組分別包含 "某" 和 "嬋",因此可以匹配 "竹某嬋" 或 "竹嬋某"。接下來,re.sub 函數用於替換匹配到的字元串。這里我們提供了一個替換函行緩數 replace_pattern,它直接返回 "竹嬋嬋"。最後,將替換後的內容寫入一個名為 output.txt 的新文件。
…………
回復:
如果要實現匹配任意特定中文字元,可以使用 Unicode 的中文字元卜帶遲范圍。以下是修改後的示例代碼,可以將 "竹某嬋" 或 "竹嬋某" 替換為 "竹嬋嬋",其中 "某" 為任意中文字元:
import re
# 定義一個函數來實現替換操作
def replace_pattern(match_obj):
return "竹嬋嬋"
# 讀取文件內容
with open("input.txt", "r", encoding="utf-8") as file:
content = file.read()
# 使用正則表達式進行模糊匹配替換
pattern = r"竹[u4e00-u9fa5]嬋|竹嬋[u4e00-u9fa5]"
replaced_content = re.sub(pattern, replace_pattern, content)
# 將替換後的內容寫入新的文件
with open("output.txt", "w", encoding="utf-8") as file:
file.write(replaced_content)
在這個例子中,正則表達式 r"竹[u4e00-u9fa5]嬋|竹嬋[u4e00-u9fa5]" 用於匹配 "竹某嬋" 或 "竹嬋某",其中 "某" 為任意中文字元。[u4e00-u9fa5] 用於匹配任意一個中文字元。接下來,re.sub 函數用於替換匹配到的字元串。這里我們提供了一個替換函數 replace_pattern,它直接返回 "竹嬋嬋"。最後,將替換後的內容寫入一個名為 output.txt 的新文件。
D. Python用正則表達式匹配含有中文的字元串,匹配不到
代碼如下:
#coding=utf-8
importre
s=u'<li><aclass="nav-first"href="/">首頁</a></li>'
r=re.compile(u'<li><asclass="[^"]*"shref="[^"]">(.*?)(?=</a></li>)')
ss=r.findall(s)
forstrinss:
printstr
運行結果: