• Python学习笔记(正则表达式)


     - 表示以什么开头或结尾

    d - 匹配数字

    w - 匹配字母或数字或下划线或汉字(我试验下了,发现3.x版本可以匹配汉字,但2.x版本不可以)

    s - 匹配任意的空白符

    ^ - 匹配字符串的开始

    $ - 匹配字符串的结束

    2.

    S其实就是s的反义,任意不是空白符的字符。同理,还有:

    W - 匹配任意不是字母,数字,下划线,汉字的字符

    D - 匹配任意非数字的字符

    B - 匹配不是单词开头或结束的位置

    [a]的反义是[^a],表示除a以外的任意字符。[^abcd]就是除abcd以外的任意字符。

    3.

    之前我们用过*、+、{}来表示字符的重复。其他重复的方式还有:

    ? - 重复零次或一次

    {n,} - 重复n次或更多次

    {n,m} - 重复n到m次

    正则表达式不只是用来从一大段文字中抓取信息,很多时候也被用来判断输入的文本是否符合规范,或进行分类。来点例子看看:

    ^w{4,12}$

    这个表示一段4到12位的字符,包括字母或数字或下划线或汉字,可以用来作为用户注册时检测用户名的规则。(但汉字在python2.x里面可能会有问题)

    d{15,18}

    表示15到18位的数字,可以用来检测身份证号码

    ^1d*[x]?

    以1开头的一串数字,数字结尾有字母x,也可以没有。有的话就带上x。

    另外再说一下之前提到的转义字符。如果我们确实要匹配.或者*字符本身,而不是要它们所代表的元字符,那就需要用.或*。本身也需要用\。

    比如"d+.d+"可以匹配出123.456这样的结果。

  • 相关阅读:
    CSV 文件的读写(函数)
    携带cookies请求github个人信息(类封装)
    网络和http协议理论
    思卡乐科技发布SR3系列RFID产品
    爱立信开始大规模mesh网络测试
    NB-IoT物联网,来了
    想象力是我们的局限,蓝牙5应用初探
    RFID电动车管理,智慧城市物联网建设的入口
    蓝牙模块选择经验谈
    RFID电动自行车与共享单车之物联网比较
  • 原文地址:https://www.cnblogs.com/seven000/p/6958255.html
Copyright © 2020-2023  润新知