码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2017-05-02 23:40:44      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:article   exp   strong   details   常用正则表达式   内容   模式匹配   使用   范围   

正则表达式:强大的文本出来里工具。
      模式匹配和替换的强大的工具。

两部分组成:
    1.原义文本字符
    2.元字符

  []  一类,即符合一个都行 [abc] 符合一个都行
  [^] 负向类,即取反 [^abc] a b c 以外的都行
  [a-z] 范围类,是一个闭区间,支持连写 [a-zA-Z] 所有大小写字符,想匹配的比如本身就有-等
    就直接在后面加- [0-9-]

  g 全局查找 i 忽略大小写 m 多行处理
  预定义类:
    . 回车换行之后的所有字符
    \d 数字字符0-9
    \D 非数字字符
    \s 空白符 space
    \S 非空白符
    \w 数字字符下划线 word
    \W 非数字字符下划线

  边界
    \b 单词边界(bound)
    \B 非单词边界
    ^ 以xxx开始
    $ 以xxx结束

  量词
    ? 0次或者1次
    + 1次或者多次
    * 任意次
    {n} 出现了n次
    {n,} 至少出现了n次
    {n,m} n次到m次

  贪婪模式:123456 \d{3,6} 会匹配6次,尽可能多地匹配 默认模式
  非贪婪模式:\d{3,6}? 非贪婪模式,匹配3次就不匹配了

  分组:Byron{3} 默认匹配n字符,采用分组匹配整个单词 (Byron){3}

  或 | 使用分组限制或的范围,不然默认整个正则表达式左右两个部分或 Byr(on|Ca)rry

  反向引用 $1 $2 $n等表示第n个分组的内容,(其它语言大同小异 如\1表示分组1的文本)

  忽略分组,在分组前加?: (?: Byron)

  前瞻:正则表达式在匹配时向前检查是否符合断言
  正向前瞻 exp(?=assert) exp 与assert都是正则表达式,断言部分不匹配,只是作为断言
  负向的 exp(?!assert)
  后顾相反

 

常用正则表达式:

  http://blog.csdn.net/onebigday/article/details/5429868/

正则表达式

标签:article   exp   strong   details   常用正则表达式   内容   模式匹配   使用   范围   

原文地址:http://www.cnblogs.com/jiangbei/p/6798912.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!