Python正则表达式中的转义字符问题

在python使用正则表达式需要考虑两种转义字符(两个层次):

  • 字符串中的转义字符
  • 正则表达式中的转义字符

即我们在python中使用字符串对正则表达式进行表达,而python字符串的表示与字符串本身是有区别的,即存在特殊字符,比如字符串"\\"实际上表达的是特殊字符\。若我们想构造的正则表达式\n,我们的字符串应当写作"\\n"

即我们在构造完python正则表达式之后还要考虑如何用字符串将其表示出来。一般,我们会在表达正则表达式时在对应的字符串前加上一个r(大小写均可),表示原始字符串(有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符,除用于包裹字符串的引号仍需转义,否则无法区分字符串的结束)。例如:

str = r'"\n"'

等同于:

str = '"\\n"'

其表达的字符串均为"\n"(包含双引号)

当然,若字符串中包含用于包裹字符串的引号,则仍需转义字符,如字符串由单引号包裹,则字符串中的单引号仍需转义,如:

str = r'\'\''
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值