首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Python中使用Regex可以同时删除HTML标签、字符、数字和单字母单词?

在Python中使用Regex可以同时删除HTML标签、字符、数字和单字母单词?
EN

Stack Overflow用户
提问于 2018-07-06 05:39:42
回答 1查看 52关注 0票数 -2

我在文本分析的数据清理中遇到了一个问题。现在,我已经对我的数据执行了四次正则表达式,但仍然存在不需要的单词。我想知道是否有一种选择单词的方法!我知道Scikit-learn有这个选项,但我不是在处理英文文本。这是我在上面输入的内容,但我想知道是否有其他方法可以做到这一点

代码语言:javascript
复制
def clean(data):
    e = re.compile(r"\b[a-zA-Z]\b") #single letters
    data = e.sub('', data)
    r = re.compile(r'<[^<]*?>') # html tags
    data = r.sub('', data)
    p = re.compile(r'[^-\w]') # remove characters like \n
    data = p.sub(' ', data)
    q = re.compile(r'[\d_\.]*') # remove numbers
    return q.sub('', data)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-09 16:35:22

我用几行代码替换了第一个和第二个正则表达式,并且工作得非常好。

代码语言:javascript
复制
def clean(data):
p = re.compile(r'[^-\w]') # remove characters
data = p.sub(' ', data)
q = re.compile(r'[\d_\.]*') # remove numbers
return q.sub('', data)
for i in text_train:
    for j, t in enumerate(text_train[i]):
        text_train[i][j] = [w for w in clean(t).split() if len(w)>1]

上面的代码对文本进行了标记,只接受包含一个以上字母的单词。对于另一个问题,我尝试了@laurent_laporte答案,但我的文本中仍然有&amp。取而代之的是在停用词文件中添加了,不是专业的,但工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51200247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档