Python - 使用正则表达式查找带有垃圾字符的单词

时间:2012-01-27 11:53:30

标签: python regex

我有一个扫描文本,这些文字中可能有一些垃圾字符。垃圾字符通常不是字母数字或标点符号。

我有以下正则表达式:

garbage_pat = re.compile(r"(\w*(?P<and>[^a-zA-Z0-9_ \t\n\r\f\v,.?!;:])+[\w(?P=and)]*)")

此正则表达式正确找到包含一个垃圾字符的单词。如果有两个或更多垃圾字符,则正则表达式正在拆分单词。 例如,aut~mo¤il将分为两个单词。当它包含两个或多个垃圾字符时,如何让我的正则表达式返回整个单词。

1 个答案:

答案 0 :(得分:1)

您似乎正在寻找这样的表达式:

(\w*(?:[^a-zA-Z0-9_ \t\n\r\f\v,.?!;:]\w*)+)