正则表达式笔记

来源:互联网 发布:mac 电源适配器 编辑:程序博客网 时间:2024/05/29 13:49

1、+ 号代表前面的字符必须至少出现一次(1次或多次),+ 等价于 {1,}。
2、* 号代表前面的字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次),* 等价于{0,}。
3、? 问号代表前面的字符最多只可以出现一次(0次、或1次),? 等价于 {0,1},它们都代表着: 0个或1个前面的内容 或 前面的内容是可选的
4、. 匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 . 要匹配包括 ‘\n’ 在内的任何字符,请使用像”(.|\n)”的模式。
5、^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。
6、{ 标记限定符表达式的开始。要匹配 {,请使用 {。
7、| 指明两项之间的一个选择。要匹配 |,请使用 |。
8、限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有 * 或 + 或 ? 或 {n} 或 {n,} 或 {n,m} 共6种。
9、{n} n 是一个非负整数。匹配确定的 n 次。 {n,} n 是一个非负整数。至少匹配n 次。 {n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。
10. (pattern)匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 09 属性。要匹配圆括号字符,请使用 ‘(’ 或 ‘)’。
11、(?:pattern)匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比 ‘industry|industries’ 更简略的表达式。
Java6 Java7
1、正向预查
(?:pattern) 匹配结果。Java(?:6|7)等效于Java6|Java7,结果Java6 Java7
(?=pattern) 正向匹配。Java(?=6),匹配后面跟着6的Java,即第一个Java,结果Java 6 –Java7
(?!pattern) 正向不匹配。Java(?!6),匹配后面不跟着6的Java,即第二个Java,结果–Java6 Java 7
2、反向预查
(?<=pattern) 反向匹配。(?<=J)a,匹配紧跟字母J后面的a,结果J a va6 J a va7
(?

原创粉丝点击