匹配用卷曲引号括起来的字符串

2024-06-02 04:58:52 发布

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

Hi-im尝试在python2.7中使用regex来搜索两个引号之间的文本,例如“hello there”。现在我正在使用:

matchquotes = re.findall(r'"(?:\\"|.)*?"', text)

它工作得很好,但只查找使用以下字符的引号:

然而,我发现有些文本,我正在分析使用这些不同的字符:。。。

如何修改正则表达式,使其找到”。。


Tags: text文本rehellohi字符引号regex
3条回答

我不是专家,但对于那些“花哨”的引号,我首先会从表中得到它们的代码,如\xe2\x80\x9c\u2019。然后我会尝试匹配他们写的正则表达式代码。为此,这可能会有帮助:http://www.regular-expressions.info/refunicode.html

我希望这有帮助!在

使用字符类可能有用,或者可能会破坏一切:

matchquotes = re.findall(r'[“”"](?:\\[“”"]|.)*?[“”"]', text)

如果你不太在意配对总是排成一行,这可能会满足你的需要。如果他们在另外两种模式中使用第三种类型的话,除非你建立了一些模式并找到了它们的交集,否则他们总是会把你搞砸的。在

根据您正在进行的其他处理以及文本来自何处,最好将所有引号转换为“而不是逐个处理。在

相关问题 更多 >