我正在写一个python脚本来为几个文本文件中的单词分配语法类别。在每个文本文件中,我在尖括号<>内有文件头。在整篇文章中,还有附加的行,包括时间戳,页码和抄录器中的问题等信息。我想删除这些行。这基本上是文本文件的样子:Python,使用正则表达式消除尖括号内的行
<title Titipuru Supay>
<speaker name>
<sex female>
<dialect Pastaza>
<register narrative>
<contributor name>
chan; payguna serenkya man chiga;
<ima?>
payguna kirina man, chiga, mana
shayachira; ninagunan shi tujsirani nira:
illaparani nira shi illapay
<173>
pasasha, ima shi kasna nin, nisha,
即使有相同数量的每个头文件的其他<>材料而异,所以我不能只是消除特定行。所以我想我会尝试一些简单的方法,像re.sub语句,它可以消除所有内容,包括括号在内的所有内容。
with open(file, encoding='utf-8') as file_in:
text = file_in.read()
re.sub(r"<.*>", " ", text)
我试过<。*>上pythex.org和regex101它与测试字符串这两个地方的工作,但不是在我的脚本(是的,我有进口重)。我也试过其他的解决方案,如:\<.*\>
我只是没有得到正确的或正确的东西吗?
你怎么知道它是不是工作?你是否坚持're.sub()'的某个地方的结果? - 它不适用 - 生成一个新的字符串。 – alecxe
我在它下面添加了一个打印(文本)语句,并且在输出中我可以看到所有的<>材质仍然保留 – Wangana
尝试'text = re.sub(r“<[^>”*>“,”“,text )'。否则,请添加更多文本以进行测试。 –