正则表达式 Python - 反斜杠 [重复]

Posted

技术标签:

【中文标题】正则表达式 Python - 反斜杠 [重复]【英文标题】:Regex Python - Backslash [duplicate] 【发布时间】:2017-07-10 05:58:50 【问题描述】:

我正在尝试删除由反斜杠标识的文本中的标签。例如,对于短语“Hello \tag world”,我想返回短语“Hello world”。我尝试了以下方法,但它并没有摆脱 '\tag'。

print re.sub('\\[A-Za-z]+',' ',text)

我确定这很简单,但我似乎无法弄清楚。

感谢您提供的任何帮助!

【问题讨论】:

对正则表达式使用原始字符串。 \\ 在您的正则表达式中放置一个文字反斜杠,但您的正则表达式中的文字反斜杠与 text 中的文字反斜杠不匹配 - 它被正则表达式引擎视为转义字符。您需要原始字符串提供的额外转义层。 【参考方案1】:

必须是:

re.sub('\\\\[A-Za-z]+',' ',text)

否则,'\\' 将被视为正则表达式特殊转义字符。

【讨论】:

虽然这是一个有效的选项,但原始字符串表示法通常更方便。 @user2357112 这完全是见仁见智。这个答案是完全有效的,this 本来是一个更好的重复问题。

以上是关于正则表达式 Python - 反斜杠 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

python 正则表达式中反斜杠()的麻烦和陷阱 (转)

re模块 正则表达式

Python基础要点:字符串和正则表达式中的反斜杠(‘‘)问题详解

python3 正则表达式re模块

Python3快速入门——Python3正则表达式

Python字符串和正则表达式中的反斜杠('')问题