正则表达式

  • 基本语法

    • 可见原子

      • 指Unicode编码中用键盘输出后肉眼可见的字符。
        1、标点;
        2、英文字母数字;
        3、汉字,日文,阿拉伯文等其他语言文字;
        4、∑,∈,≌等数理化公式符号;
        5、其他可见字符。
    • 不可见原子

      • 就是Unicode编码中用键盘输出后肉眼不可见的字符。
        1、换行符:\n;
        2、回车:\r;
        3、制表符:\t;
        4、空格;
        5、其他不可见的符号。
    • 原子匹配方式

      • | 匹配两个或多个分支选择
        [ ] 匹配方括号中任意一个原子
        [^]匹配不再方括号中的任意字符
  • 原子集合

    • \n 、line feed、换行的意思,打印机遇到换行符,就移到下一行。

      \r 、carriage return的缩写、回车的意思,打印机遇到回车符,就会移回行首。

      \t 、tab、制表的意思,tab键按一下就是一个制表符,用来对齐文本作 用,让排版像表格一样整齐。

      \v 、和摇篮进行曲同学说的一样,vertical tab的缩写,垂直制表符。

      \f 、form feed,换版、换页的意思,以前打印机遇到这个换版符就会换另一张纸。

      \d 、digit,数字的意思。并非decimal、后者大多是指小数。

      \s 、white space,透明的间隔,即[换版符、换行符、回车符、制表符、垂直制表符、空格符],老师ppt可能少写了一个空格符。

      \w 、word,单词的意思,和网站用户名密码只允许英文字母同理(其实是包括字母、数字、下划线)。

  • 量词

    • {n} 匹配恰好出现n次
      {n,} 匹配至少n次
      {n, m} 匹配最少n次,最多m次
      * 匹配任意次 (出现0次,或者出现n次)
      ? 匹配0次或一次
      + 匹配至少一次,也就是一到无穷大次
  • 边界控制

    • ^ 匹配字符串开始的位置 ^string:只能匹配一开始就为string字符串,不能有空格,匹配行的开头和结尾

      $ 匹配字符串结尾的位置

      ()//括号的整体为一个原子

  • 修正模式

    • 默认 贪婪匹配:匹配结果存在歧义时取其长,默认匹配模式,添加在匹配模式的最后面,实例/0-9/

      U 懒惰匹配,匹配结果存在歧义时取其短,实例/0-9/U

      i 忽略英文字母大小写,实例/aabb/i

      x 忽略空白,实例/aa bb/x

      s 让元字符”.”匹配包括换行在内的所有字符

    • 界定符 ‘/’

举个邮箱的例子,通用邮箱正则随着邮箱格式改变,也在改变着。
邮箱账号格式开始出现xxx.admin@163.com之类在@前可出现”.”的例子。为了匹配,邮箱正则改变为”/^(\w)+(.|-|\w)+)*@(\w+(.\w)+)$”
(\w)+表示可以有1个以上字母、数字、下划线;
((.\w)+)表示可以有1个以上.+字母、数字、下划线;
(.\w)+)*表示可以有0个或1个以上.+字母、数字、下划线;
是不是挺好理解的?

也可以这样写”^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?.\w)+$”

更加明了了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值