• 正则表达式


    '''
    正则表达式
    '''

    '''
    字符组 : 描述的是一个位置上能出现的所有可能性
    接受范围,可以描述多个范围,连着写就可以了
    [abc] 一个中括号只表示一个字符位置
    匹配a或b或c

    [0-9] 根据 ASCII 进行范围的比对
    [a-z]
    [A-Z]
    ①大写字符A到Z的ASCII代码分别是065到090,字符加一,代码加一
    ②小写字符a到z的ASCII代码分别是097到122,依旧是字符加一,代码加一

    [a-zA-Z] 大小写
    [0-9a-zA-Z] 数字大小写

    在正则表达式中能够帮助我们表示匹配的内容的符号都是正则中的 元字符
    [0-9] ==> d 也可以匹配一位任意数字 digit
    [0-9a-zA-Z] ==> w 表示数字,字母,下划线 word
    空白(空格|tab|enter) ==> s 表示所有空白:空格,回车,tab
    空格 ==> space
    tab ==>
    enter ==>

    元字符 ---匹配规则
    [] 字符组 : 描述的是一个位置上能出现的所有可能性
    [^] 所有的非字符组
    d 也可以匹配一位任意数字 digit
    w 表示数字,字母,下划线 word
    s 空白
    tab
    enter
    D 非数字
    W 非数字,字母,下划线
    S 非空白
    [dD] , [wW] ,[sS] 匹配所有
    [^d] 表示所有非数字的所有
    . 匹配除换行符之外的所有
    ^ 匹配一个字符串的开始
    $ 匹配一个字符串的结尾
    | a表达式|b表达式 匹配a或者b表达式中的内容,如果a匹配成功了,不会继续匹配b表达式了,
    所以如果两个规则有重叠部分,总是把长的放在前面
    () 分组 1.约束:描述的内容的范围问题
    例如:匹配 www.jd.com,www.mi.com,www.nba.com
    www.(jd|mi|nba).com
    '''

    '''
    记忆元字符
    d w s D W S
    [] [^] .
    ^ $
    | ()
    '''

    '''
    量词: 只能约束前一位的元字符.不能单独使用
    {n} 匹配n次
    {n,} 匹配至少n次
    {n,m} 匹配至少n次,至多m次
    ? 匹配0个或1次 {0,1}
    + 匹配1次或者多次 {1,}
    * 匹配0次或者多次 {0,}

    用数轴记忆
    ? +
    0---1------------------------>+∞
    *

    匹配0次
    整数 d+
    小数 d+.d+
    整数或者小数 d+(.d+)
    分组的作用 d+(.d+)?
    '''
    '''
    11位手机号 1开头,第二位3-9
    ^1[3-9]d{9}&

    贪婪匹配
    在两次范围允许的情况下尽可能多的匹配内容
    .*?x 表示任意字符,任意多次,但是遇到最后一个x才停下来

    原因:回溯算法

    非贪婪(惰性)匹配
    .*?x 表示任意字符,任意多次,但是一旦遇到x就停下来
    元字符 ?

    转义符
    原本有特殊意义的字符,到了表达它本身的意义的时候,需要转义
    有一些特殊意义的内容,放在字符组中,回取消它的特殊意义
    [.]
    [().*+?] 所有的内容在字符组中会取消它的特殊意义
    [a-c] -在字符组中表示范围,如果不需要表示范围,需要转义,或者放在字符组的最前面/最后面


    '''



    表达式在线测试网站
    http://tool.chinaz.com/regex/

    星辰大海
  • 相关阅读:
    C# WPF透明黑色样式窗口
    ExtJS速学
    编译away3d例程序记
    用VC加载Lua.lib,C++调用lua脚本函数
    mysql数据库备份
    Google TTS(文字转语音)api 2
    C Sharp Coding Standards
    微信公众平台功能大杂烩 ip/域名查询 车牌号归属地查询 手机归属地查询 公交查询 英汉互译
    google jsapi学习记录
    Google TTS(文字转语音)api
  • 原文地址:https://www.cnblogs.com/qiuyubai/p/12817476.html
Copyright © 2020-2023  润新知