你可以使用 Python 的正则表达式模块 re
来实现这个目的。
首先,需要使用 re.compile()
方法将你的正则表达式编译为一个正则表达式对象。正则表达式可以用来匹配汉字,例如:
import re
# 匹配任意单个汉字的正则表达式
pattern = re.compile(r'[\u4e00-\u9fa5]')
然后,你可以使用 re.finditer()
方法在文本中查找所有匹配的汉字,并使用 re.sub()
方法将所有匹配的汉字替换为空字符串,从而得到原文本中汉字所在的句子。
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 查找所有匹配的汉字
matches = pattern.finditer(text)
# 遍历匹配的汉字,并使用 re.sub() 方法提取出含有汉字的句子
for match in matches:
start = match.start()
end = match.end()
sentence = re.sub(pattern, '', text[start:end])
print(sentence)
上面的代码假设你的文本文件是 utf-8 编码的,如果是其他编码,你需要指定相应的编码。
希望这些信息能帮到你!