zoukankan      html  css  js  c++  java
  • Python连载48-正则表达式(中)

    一、正则的写法:

    . (点好) :表示任意一个字符,除了 ,比如查找所有的一个字符.

    [] :匹配中括号中列举的任意字符,比如[L,Y,0], LLY, Y0, LIU

    d :任意一个数字

    D :除了数字都可以

    s :表示空格,tab键

    S :除了空白符号

    w :单词字符,就是a-z,A-Z,0-9,_

    W :除了单词字符

    * :表示前面的内容重复零次或者多次

    + :表示前面内容至少出现一次

    ?:前面才出现的内容零次或者一次

    {m,n} :允许前面的内容出现最少m次,最多n次

    ^ :匹配字符串的开始

    & :匹配字符串的结尾

     :匹配单词的边界

    ():对正则表示式进行分组,从第一个括号开始,编号逐渐增大

    A :只匹配字符串开头,Aabcd,则abcd

     :仅匹配字符串末尾,abcd,abcd

    | :管道符号,相当于或

    (?P<name>...) :分组,除了原来的编号再制定一个别名,(?P<id>12345){2}

    (?P=name) :引用分组

    我们举几个例子:

    ^d$   验证一个数字

    ^d+$   必须至少有一个数字

    ^d{5,10}$   只能出现数字,且位数为5-10位

    ^[16-99]$   注册者输入年龄只能在16-99这个区间

    ^[a-zA-Z0-9]$   只能输入英文字符和数字

    [0-9]{5,12}   验证qq号码

    二、Re包的大致使用过程

    1.使用compile将表示正则的字符串编译为一个pattern对象

    2.通过pattern对象提供一系列方法对文本进行查找匹配,获得匹配结果,一个Match对象最后使用Match对象提供的属性和方法获取信息,根据需要进行操作。

    三、Re常用函数

    group():获取一个或多个分组匹配的子串,当获得整个匹配的字符串时,直接使用group或者group(0)

    start:获取分组匹配的子串在整个字符串中的开始位置,参数默认为0

    end:获取分组匹配的子串在整个字符串中的结束位置,默认为

    span:返回的结构数组(start(group),end(group))

    四、源码

    2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

  • 相关阅读:
    liunx挂载Ios镜像文件
    liunx下删除多个目录下的相同文件
    tomcat启动报错:Unable to complete the scan for annotations for web application [] due to a StackOverflow
    lr中controller 中scenario-> rendezvous显示灰色不可用
    liunx 下在指定文件夹下搜索字符
    python运行时提示:dot not in the path
    1.4 python 类型转换函数
    js字符串拼接
    自己写的时间轴空控件
    ios禁止页面下拉
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/11802751.html
Copyright © 2011-2022 走看看