我正在尝试通过一个8页的PDF文件搜索括号内的所有单词,除了“(EAI),(EY)”和其他几个单词。我正在使用正则表达式,并且可以在括号内全部说出三个字母,但是我不知道如何排除我想排除的内容。
import re
lines = text.split()
search = "\(\D{3}\)"
regex = re.compile(search)
for line in lines:
three_letters= regex.findall(line)
for word in three_letters:
print(word)
我得到以下列表:
(FBS)
(NFS)
(IAD)
(CD)
(CD)
(EAI)
(EAI)
(EAI)
(VIG)
(EAI)
(EAI)
(NTF)
(DRP)
(EAI)
(IAD)
但是我需要排除其中的几个。
我一直在这头上撞了一段时间,请帮忙!
最佳答案
与此配合使用findall函数(匹配3个字母)\((?!(?:list|of|stuff|you|don't|want)\))[A-Z]{3}\)
格式化的
\(
(?!
(?:
list
| of
| stuff
| you
| don't
| want
)
\)
)
[A-Z]{3}
\)
指定范围以使其可变。
本示例匹配2至5个字母
{2,5}
。或者,2到无上限只是
{2,}
\((?!(?:list|of|stuff|you|don't|want)\))[A-Z]{2,5}\)
关于python - 如何使用正则表达式在PDF中搜索括号中除特定单词集以外的所有单词?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57118203/