zoukankan      html  css  js  c++  java
  • 正则笔记

    正则常用网站:
    可视化: https://regexper.com/


    常用正则:
    1、匹配汉字小结:
    匹配汉字文字:
    [u4e00-u9fa5]
    匹配非汉字字符:
    [^u4e00-u9fa5]
    匹配双字节字符(汉字、中文标点符号等):
    [^x00-xff]

    2、匹配手机号
    手机号: ^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])d{8}$

    3、Email地址
    Email地址:^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$

    4、身份证号
    身份证号(15位、18位数字):^d{15}|d{18}$


    总结:
    1> 集合
    [xyz] 字符集合(x/y或z)
    [a-z] 字符范围
    [a-zA-Z]
    [^xyz] 负值字符集合 (任何字符, 除了xyz)
    [^a-z] 负值字符范围
    [a-d][m-p] 并集(a到d 或 m到p)

    2> 常用元字符
    . 匹配除换行符以外的任意字符
    w 匹配字母或数字或下划线或汉字 [a-zA-Z_0-9]
    s 匹配任意的空白符(空格、TAB 、回车 )
    d 匹配数字 [0-9]
    ^ 匹配字符串的开始
    $ 匹配字符串的结束
     匹配单词的开始或结束

    2> 常用反义符
    W 匹配任意不是字母,数字,下划线,汉字的字符[^w]
    S 匹配任意不是空白符的字符 [^s]
    D 匹配任意非数字的字符[^0-9]
    B 匹配不是单词开头或结束的位置
    [^x] 匹配除了x以外的任意字符
    [^aeiou] 匹配除了aeiou这几个字母以外的任意字符

    3> 常用限定符
    * 重复零次或更多次
    + 重复一次或更多次
    ? 重复零次或一次
    {n} 重复n次
    {n,} 重复n次或更多次
    {n,m} 重复n到m次,

    4> 贪婪和懒惰
    *? 重复任意次,但尽可能少重复
    *+ 重复1次或更多次,但尽可能少重复
    ?? 重复0次或1次,但尽可能少重复
    {n,m}? 重复n到m次,但尽可能少重复
    {n,}? 重复n次以上,但尽可能少重复

  • 相关阅读:
    Linux 进程间通信(包含一个经典的生产者消费者实例代码)
    Linux多进程编程实例
    web开发中的mysql使用
    Linux 网络编程中的read和write函数正确的使用方式
    Linux 使用tcpdump观察arp通信过程
    Linux 开启echo等服务
    Linux send和recv
    自己动手写http服务器——主程序(三)
    自己动手写http服务器——线程池(一)
    http请求报文格式和响应报文格式
  • 原文地址:https://www.cnblogs.com/brithToSpring/p/13132398.html
Copyright © 2011-2022 走看看