auto commit

This commit is contained in:
CyC2018
2018-04-14 15:10:47 +08:00
parent fb3e30d898
commit 95cb69fadd
4 changed files with 63 additions and 24 deletions

View File

@ -19,7 +19,7 @@
正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。
[正则表达式在线工具](http://tool.oschina.net/regex/)
[正则表达式在线工具](https://regexr.com/)
# 二、匹配单个字符
@ -164,7 +164,7 @@ a.+c
^ 元字符在字符集合中用作求非,在字符集合外用作匹配字符串的开头。
使用 (?m) 来打开分行匹配模式,在该模式下,换行被当做字符串的边界。
分行匹配模式multiline下,换行被当做字符串的边界。
**应用**
@ -173,10 +173,10 @@ a.+c
**正则表达式**
```
(?m)^\s*//.*$
^\s*\/\/.*$
```
如果没用 (?m),则只会匹配 // 注释 1 以及之后的所有内容。用了分行匹配模式之后,换行符被当成是字符串分隔符,因此能正确匹配出两个注释内容。
<div align="center"> <img src="../pics//600e9c75-5033-4dad-ae2b-930957db638e.png"/> </div><br>
**匹配结果**
@ -197,7 +197,7 @@ a.+c
**正则表达式**
```
(ab) {2,}
(ab){2,}
```
**匹配结果**
@ -222,21 +222,23 @@ a.+c
匹配 IP 地址。IP 地址中每部分都是 0-255 的数字,用正则表达式匹配时以下情况是合法的:
1. 一位或者两位的数字
2. 1 开头的位数
3. 2 开头,第 2 位是 0-4 的三位数
4. 25 开头,第 3 位是 0-5 的三位数
1. 一位数字
2. 不以 0 开头的位数
3. 1 开头的三位数
4. 2 开头,第 2 位是 0-4 的三位数
5. 25 开头,第 3 位是 0-5 的三位数
**正则表达式**
```
(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.) {3}(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5])))
(((\d)|([1-9]\d)|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(((\d)|([1-9]\d)|(1\d{2})|(2[0-4]\d)|(25[0-5])))
```
**匹配结果**
1. **192.168.0.1**
2. 555.555.555.555
2. 00.00.00.00
3. 555.555.555.555
# 八、回溯引用
@ -251,7 +253,7 @@ a.+c
\1 将回溯引用子表达式 (h[1-6]) 匹配的内容,也就是说必须和子表达式匹配的内容一致。
```
<(h[1-6])>\w*?</\1>
<(h[1-6])>\w*?<\/\1>
```
**匹配结果**