如何让这个正则表达式忽略重音字符?

2024-09-27 21:30:08 发布

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

我有一个文本文件,我的脚本正在读取并从中获取最频繁的单词。然而,在这样做的过程中,在对源文本进行清理的过程中,它无法处理重音字符(在本例中,它们是úűűű)。在

这就是我现在所拥有的。在

str = re.sub(r'\W+', ' ', str)

这只是删除重音字符。我尝试过添加flags=re.U,但它以另一种方式扰乱了结果。我怀疑有一个简单的方法来解决我的问题,我一直在寻找,但没有成功,所以我求助于你。提前谢谢。在


Tags: 方法文本re脚本过程方式字符单词
1条回答
网友
1楼 · 发布于 2024-09-27 21:30:08

您需要使用正确的修饰符:

str = re.sub(ur'\W+', u' ', s, flags=re.UNICODE)
                                     ^^^^^^^^^^

Python 2.x docs

Make the \w, \W, \b, \B, \d, \D, \s and \S sequences dependent on the Unicode character properties database. Also enables non-ASCII matching for IGNORECASE.

以下是在线Python 2.7 demo

^{pr2}$

相关问题 更多 >

    热门问题