字符串字面量

字面量解释:

字符串字面量(stringliteral)是指双引号引住的一系列字符,双引号中可以没有字符,可以只有一个字符,也可以有很多个字符。


python re.sub 中解释, 原始字符串和 字符串字面量的关系:

链接:https://docs.python.org/3/library/re.html


Regular expressions use the backslash character ('\') to indicate special forms or to allow special characters to be used without invoking their special meaning. This collides with Python’s usage of the same character for the same purpose in string literals; for example, to match a literal backslash, one might have to write '\\\\' as the pattern string, because the regular expression must be \\, and each backslash must be expressed as \\ inside a regular Python string literal.

匹配\ --->正则表达式为\\ ---->python字符串字面量为\\\\ 


each backslash must be expressed as \\ inside a regular Python string literal.

译:在python字符串字面量每一个斜杠必须用\\(两个斜杠)表示


python 的原始字符串 格式 r"字符串"

The solution is to use Python’s raw string notation for regular expression patterns; backslashes are not handled in any special way in a string literal prefixed with 'r'. So r"\n" is a two-character string containing '\' and 'n', while "\n" is a one-character string containing a newline. Usually patterns will be expressed in Python code using this raw string notation.




例子:

import re
ss="""\\"""
print(ss)  # 输出 \
s = "\\。。\\"
print(s) # 输出  \。。\
s = re.sub(r"\\",r"\\]]]",s)
print(s)   # \]]]。。\]]]
print(r"\n")   # \n
print(r"\\")  #  \\
print(r"\\]]]")#  \\]]]



sql转义替换

desc = "\\\'\"\nb\t  a\nb"
print(desc)
desc=desc.replace("\\",r"\\")
desc =desc.replace(r"'",r"\'")
desc = desc.replace("\"",r"\"")
desc = desc.replace("\n",r"\n")
desc = desc.replace("\t",r"\t")
desc = desc.replace("\r\n",r"\n")
print(desc)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值