最近在自学python,字符串和正则表达式的特殊字符转义有点混淆,做个笔记简单总结一下。

1.普通字符串转义

在字符串中使用特殊字符时,要用反斜杠(\)转义字符。例如:'Let\'s go!',这里对单引号进行转义。

在不想把反斜线当作特殊字符时,可以使用原始字符串,原始字符串以r开头。

例如:print r'C:\nowhere'等价于print 'C:\\nowhere'

2. 正则表达式中特殊字符转义

在正则表达式中如果要将特殊字符(如通配符.)当作普通字符进行匹配,需要使用反斜杠进行转义。比如,要匹配一个反斜杠本身,也许要用'\\\\'来作为正则表达式的字符串,因为正则表达式字符串里要用\\对特殊字符进行转义,而字符串中的每个反斜杠都要用\\表示。

可以使用原始字符串来简化这个问题,这种方式在正则表达式中很常见。例如,上面匹配反斜杠可以写成r'\\',这样就很容易理解了。

更多正则表达式的内容可以参考:http://www.cnblogs.com/xupeizhi/archive/2013/02/05/2892479.html

python字符串转义与正则表达式特殊字符转义的更多相关文章

  1. Java处理正则表达式特殊字符转义 转

    正则需要转义字符:'$', '(', ')', '*', '+', '.', '[', ']', '?', '\\', '^', '{', '}', '|'   异常现象: java.util.reg ...

  2. python的正则表达式 re-------可以在字符串前加上 r 这个前缀来避免部分疑惑,因为 r 开头的python字符串是 raw 字符串,所以里面的所有字符都不会被转义

    正则表达式使用反斜杆(\)来转义特殊字符,使其可以匹配字符本身,而不是指定其他特殊的含义.这可能会和python字面意义上的字符串转义相冲突,这也许有些令人费解.比如,要匹配一个反斜杆本身,你也许要用 ...

  3. python正则表达式模块re:正则表达式常用字符、常用可选标志位、group与groups、match、search、sub、split,findall、compile、特殊字符转义

    本文内容: 正则表达式常用字符. 常用可选标志位. group与groups. match. search. sub. split findall. compile 特殊字符转义 一些现实例子 首发时 ...

  4. 第11.13节 Python正则表达式的转义符”\”功能介绍

    为了支持特殊元字符在特定场景下能表示自身而不会被当成元字符进行匹配出来,可以通过字符集或转义符表示方法来表示,字符集表示方法前面在<第11.4节 Python正则表达式搜索字符集匹配功能及元字符 ...

  5. JS_正则表达式_使用字符串创建的正则表达式_反斜杠也需要添加转义符

    备注:   使用字符串创建的正则表达式:"\"也需要加转义符: var reg1=new RegExp("\\w+");       这和 直接使用:var r ...

  6. python字符串中的转义符

    python字符串中的转义符 1,单引号,双引号,三引号 a='www.96net.com.cn',b="96net.com.cn",c="""96n ...

  7. 『无为则无心』Python基础 — 9、Python字符串的编码与转义

    目录 1.查看变量类型 2.转义字符 (1)转义字符说明 (2)示例 (3)常用转义字符对照表 3.字符编码 (1)字符编码介绍 (2)Python中的字符编码 (3)编码格式应用于不同场景 提示:上 ...

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

    在Python普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defg ...

  9. python 正则表达式特殊字符

    字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.或一个 向后引用.或一个八进制转义符.例如,'n' 匹配字符 "n".'\n' 匹配一个换行符.序列 '\\' 匹配 ...

随机推荐

  1. iOS Code Sign error

    出现上述错误,检查是否是证书添加错误

  2. Cordova+Asp.net Mvc+GIS

    Cordova+Asp.net Mvc+GIS跨平台移动应用开发实战1-系统初步搭建(附演示,apk,全部源码)   1.前言 身处在移动互联网的今天,移动应用开发炙手可热,身为程序猿的我们怎么能错过 ...

  3. 忘记linux密码

    http://blog.163.com/xygzlyq@126/blog/static/22585899200810471512530/

  4. PTF在PET上印刷線路的注意事項

    PTF: Polymer Thick Film (聚合厚模),維基的解釋 PET: Polyethylene terephthalate (聚乙烯對苯二甲酸酯),維基的解釋 就如同大家所知道的,相較於 ...

  5. android对应版本号

    android对应版本号 Platform Version API Level VERSION_CODE Notes Android 4.2 JELLY_BEAN_MR1 Platform Highl ...

  6. Android各层推荐开发书籍及参考资料

    Android各层推荐开发书籍及参考资料 转自:http://blog.csdn.net/fancylovejava/article/details/8657058 Android系统按照架构来说一共 ...

  7. [Daily] 2014-4-22

    KEEP GOING Think more product when face difference Check value null when insert/remove/update/add ch ...

  8. kubuntu添加windows字体

    1.选取字体 在/usr/share/fonts/truetype中新建一个目录,命名为ms,然后将Windows\fonts 目录下的tahoma.ttf.tahomabd.ttf(Tahoma的粗 ...

  9. LightOJ - 1422 Halloween Costumes (区间dp)

    Description Gappu has a very busy weekend ahead of him. Because, next weekend is Halloween, and he i ...

  10. 关于优化性能<主要是速度方面>的个人心得 【转】

    一个web项目后期的维护主要在于性能方面.数据吞吐量一旦增大各种bug都出来了.那些通过硬件<数据库分表,数据库主从分离,读写分离>等的一些手段此处就不多说了.本文主要在编码方面做一个性能 ...