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

正则表达式

时间:2017-07-29 17:14:26      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:多选   需要   字母   括号匹配   字符   多次   选项   括号   表达式   

  • gray,表示g后面连着r连着a连着y;
  • gr[ea]y,[]里面使用或链接;
  • [1-9]等价于[123456789];
  • ^ $ 行开头和行结尾,锚点;
  • -在[]中使用且不在字符组第一个位置时才是元字符,表示连接。[]外是符号;
  • ^在[]中使用且在字符组第一个位置时才是元字符,表示排除。[]外是表示行锚点;
  • . 匹配所有字符,在字符组里不是元字符;
  • ()多选结构自身是完整的正则表达式,[]只能匹配单个字符;多选结构没有字符组的排除功能;
  • \<   \> 词开头和词结尾,锚点;符号分隔的字母或者数字;
  • ? 可选项元素,表示之前紧邻的元素可选;
  • + 之前紧邻的元素出现一次或多次,没有时会报失败;
  • * 之前紧邻的元素出现任意多次,或者不出现;
  • ? + * 这三个统称为量词,他们限定了元素的匹配次数;
 次数下限次数上限含义
 ? 无  可以不出现,也可以只出现一次(单次可选) 
无  无  可以出现无数次,也可以不出现(任意次数均可) 
无  可以出现无数次,但至少要出现一次(至少一次) 
  • {m,n}  区间量词,允许出现的次数;
  • () 记忆其中的子表达式(需要支持反向引用), \1 表示第一个括号匹配的文本;
  • 例子:匹配9:17 am 或者 12:30 pm。(1[012]|[-9]):[0-5][0-9] (am|pm)
  • 例子:匹配24小时。//TODO
  • 使用括号的三个理由:限制多选结构、分组和捕获文本
  • 排除型字符组,仍然要匹配一个字符,只是列出的字符都会被排除
  • 转义的三种情况:\加上元字符(\*),\加上非元字符(\<),\加上任意其他字符(反斜线被忽略,默认匹配此字符)

正则表达式

标签:多选   需要   字母   括号匹配   字符   多次   选项   括号   表达式   

原文地址:http://www.cnblogs.com/xioruu/p/7135419.html

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