Python问题!
我想在文本文件中分割句子方面提供一些帮助。我不想创建一个大规模的if循环,但我需要找到一种方法如何将文本文件拆分成句子。我必须在没有.readlines()
的情况下这样做我想用句号,引语和惊叹号分开句子......但是:
我想将文本文件中的这些拆分句子打印出来给用户。我该如何处理这个过程?我理解基本的字符串格式和索引,但添加省略号,姓氏等对我来说会更难...
**还将使用tkinter创建一个打开文件按钮和一个下拉菜单,允许用户从.txt文件中每行一个句子的程序输出创建一个新的文本文件。
谢谢!
以下是我的内容
import re
punctuation = ['.', '?', '!']
exceptions = ['Mr.', 'Mrs.', 'Ms.', 'Sr.', 'e.g', '...']
lines = []
with open('myData.txt') as myFile:
lines = re.split(punctuation, myFile)
答案 0 :(得分:0)
这是我的代码
import re
punctuation = re.compile(r"([^\d+])(\.|!|\?|;|\n|。|!|?|;|…| |!|؟|؛)+")
lines = []
with open('myData.txt','r',encoding="utf-8") as myFile:
lines = punctuation.sub(r"\1\2<pad>", myFile.read())
lines = [line.strip() for line in lines.split("<pad>") if line.strip()]