• 自整理正则表达式用法


    下面的统称为元字符
    
    . 匹配除
    (换行)之外的任意的单个字符
    a.b可以是axb , a8b ...
    
    [] 字符组,匹配中括号中的任意单个字符
    a[aeoujf]b 表示,a和b直接之间的单个字符只能是aeoujf中的任意一个字符
    a[0123456789]b 之前优化之后 a[0-9]b a和b之间0-9的任意单个字符
    a[a-zA-z]b a和b之间出现a-z之间(不区分大小写)的任意单个字符
    a[a-zA-Z0-9]b 不言而喻...
    a[axz.]b 当.出现在中括号中就失去了通配符的意义,这时就表示一个普通的点
    
    | 表示或的意思,优先级非常低,最后才计算它
    a(x|y)b 表示a和b之间不是x就是y,()表示优先级
    z|food z或者是food
    (z|f)ood zood或者是food,
    
    ()含义:1.改变优先级;2.提取组(分组)
    
    {n}  表示前面的表达式必须出现n次
    {n,} 表示前面的表达式至少出现n次,最多无限次
    {n,m} 表示至少出现n次,最多出现m次(n-m次)
    a[a-z]{3}b  表示a和b之间匹配3次a-z
    
    -----------限定符-----------
    * 表示(前单个字符或者单个表达式)出现0次或多次{0,}
    + 表示(前单个字符或者单个表达式)出现1次或更多次{1,}
    ? 表示(前单个字符或者单个表达式)出现0次或1次{0,1}  ?的另外一个意思是:终止贪婪模式
    colou?r  表示u出现或不出现
    (colou)?r 表示colou出现或不出现
    
    --------^与$--------
    
    ^ 表示字符串的开始(叫法shirt6)  还表示非!
    ^hello 表示字符串必须是以hello开头,或者说必须是以h开头,后面是ello
    a[^0-9a-zA-Z(&]b 表示a和b之间除了0-9,a-z,A-Z,(,&都行
    
    $ 表示字符串的结束
    a$ 表示字符串的结束必须是a
    
    -------简写表达式--
    d 表示[0-9] 全角的数字(不是正常的0-9)
    a[0-9]b
    adb d 表示0-9
    
    D 表示[^0-9]
    s 表示所有空白符 全角的空格
    S 表示^s
    w 表示[a-zA-Z0-9_] 也匹配所有的汉字由于.net默认才用uniconde方式来匹配,所以w也可以匹配所有汉字
    W 表示[^a-zA-Z0-9_]
     表示单词的边界(单词两边没有字符,和所有W)  字符类中,表示退格符.在替换模式中,始终表示退格符
    hello,welcome to our conutry.thanks
    
    [sS]任意字符
    [wW]任意字符
    
    对于元字符、限定符等,如果要匹配字符本身都需转义(在最前面加一个就OK)
    * + . [ - {2,3} \d 等
    
    忽略所有的元字符,类似与C#中的@符号
    string s = Regex.Escape(@"d{5,7}");
    
    
    身份证号码(15或18)两种都可以,但是明显第二种好:
    ^([1-9][0-9]{14}|[1-9][0-9]{16}[0-9Xx])$
    ^[1-9][0-9]{14}([0-9]{2}[0-9Xx])?$
  • 相关阅读:
    div 背景透明,字体不透明
    弹性盒子(1)
    小练习(4)
    小练习(3)
    图标文字上拉效果
    小练习(2)
    小练习
    css的使用(1)
    复合的使用
    表单元素的使用 form input
  • 原文地址:https://www.cnblogs.com/myesn/p/6004950.html
Copyright © 2020-2023  润新知