如何清理 Python 中的列表列表并将其发送到文本中

How can I clean and text mine a list of lists in Python

我有一段代码可以从几个 PDF 中提取文本并将它们放入列表列表中,称为 pages_text

现在我的文本在列表中,我正在尝试使用以下代码清除其中的特殊字符:

for i in len(pages_text):
    pages_text[i] = pages_text[i].lower()
    re.sub('™', "", pages_text[i])
    re.sub('[\n]', "", pages_text[i])
    re.sub("'\n'", "", pages_text[i])
    re.sub('[™]', '', pages_text[i])
    re.sub('fl', '', pages_text[i])
    re.sub('\nŒ', '', pages_text[i])
    re.findall(r"\s+", pages_text[i])
    print(pages_text)

但是删除特殊字符并不是很有效。

我的问题是:

  1. 有人可以帮我解决清洁过程中的问题吗?

感谢任何帮助我指明正确方向的人!

**为简洁明了而编辑

Python 字符串是不可变的,re.sub 不会就地修改它们。您必须用 re.sub().

返回的新字符串替换原始字符串

此外,您可以更有效地将它们组合成一个正则表达式,而不是使用多个正则表达式。例如:

special_chars_re = re.compile('[™flŒ\n]')
for idx, line in enumerate(pages_text):
    pages_text[idx] = special_chars_re.sub('', line.lower())

对于您的其他问题,请一次发布一个问题,以免您的问题因过于宽泛而被关闭。