关于postgresq的反斜杠

2024-10-03 13:26:29 发布

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

我有个问题。在

我在一个表中有一个类似“\1abc”的记录

然后我使用这个字符串作为re.sub("([0-9])",thereplacement,"2")中的regex替换

我对反斜杠有点困惑。我得到的字符串是"\\1abc"


Tags: 字符串re记录regex斜杠thereplacement
2条回答

请注意,您可以通过将标准符合_的字符串设置为on,使\不再是转义符。在

你在交互地使用python吗?在

在常规字符串中,您需要在代码中转义反斜杠,或者使用r“…”(链接到docs)。如果您以交互方式运行python,并且不将数据库中的结果分配给变量,那么它将使用它的__repr__()方法打印出来。在

>>> s = "\\1abc"
>>> s
'\\1abc' # <  How it's represented in Python code
>>> print s
\1abc # <  The actual string

还有,你的re.sub公司有点奇怪。1) 也许你的意思是[0-9]作为模式?(匹配单个数字)。如果thereplacement是您的输入,那么参数可能也是switched。语法如下:

^{pr2}$

所以我猜你会期待这样的事情:

^{3}$

编辑:试图更好地解释转义/表示。在

相关问题 更多 >