如何使用Regex在Python中解析列表

2024-04-27 11:17:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过1400多封电子邮件的列表进行解析,每个单词都是列表的一部分。我使用的是python3.4。我需要过滤掉以下单词:

  • 输出应该只包含字母为4的单词 字母或更长(无数字)
  • 输出应删除常用词(如“and”、“but”、“they”等停止词)
  • 输出应该删除输出中的常用词 对于单词cloud('sakai','email','re:')没有意义。你知道吗

因此,示例列表如下所示:

    words = ['re:', 'sakai:', 'which', 'code', 'base', 'to', 'use', 'in', 
    'production:', 'maintenance', 'branch', 'or', 'release', 'tags']

我的问题是如何从给定的3个规则中删除指定的列表项并从words()中删除它们? 我试过这个:

import re

for word in words:
    pattern = re.match('*sample removing stop words*', word)
    try:
        if pattern:
            words = words.remove(word)
            continue
    except TypeError:
        continue

但每次我得到一个“无”,我就会得到这个错误:

TypeError: 'NoneType' object is not iterable

因此words()列表不会更改。如何更改words()列表以删除上面指定的单词?你知道吗


Tags: andinre列表字母数字单词word