关键字@H_403_1@符号
- \^$./
- ?+*
- ( ) { } [ ] |
转义字符——\
\
注意,不是/
值元素@H_403_1@符号
@H_403_1@值元素符号是正则里面最基本单元,匹配时都是匹配一次。
@H_403_1@
普通字符
- 0 1 2 3 4 ... 8 9
- a b c ... z A B ... Z
- _ (即空格)
- - # @ ~ ...
- 中 国 汉 字...
转义值
- \r \n \t
- \\ \. \? \* \+ \( ...
- \^ \$\b
通配字符
- . 匹配一次任意一个普通字符值和转义字符值(\n除外)
- \d 匹配一次任意一个数字字符值,注意是数字而不是数值,也就是普通字符里面0~9十个字符;等同于[0-9]
- \w 匹配一次任意一个字母或数字或下划线(变量友好型)字符;等同于[0-9a-zA-Z_]
- \s 匹配一次任意一个空白字符。等同于[\r\n\t]
位置字符——^ $ \b
- ^ 匹配字符串开始的地方,不匹配任何字符
- $ 匹配字符串结束的地方匹配,不匹配任何字符
- \b 匹配单词边界
值元素的十六进制格式
形式 |
字符范围 |
\xXX |
编号在 0 ~ 255 范围的字符,也就是ASCII码 |
\uXXXX |
任何字符可以使用 "\u" 再加上其编号的4位十六进制数表示,也就是Unicode码 比如:"\u4e2d" |
loop函数@H_403_1@符号——{ }
- {n} =n次,等效于{n,n}
- {m,n} m~n次,包括m和n次
- {m,} ≥m次。
通常,m和n都是自然数,且一般m<n。不去做所谓的边界测试。
简写形式
- * {0,}的简写,匹配≥0次
- + {1,}的简写,匹配≥1次
- ? {0,1}的简写,匹配0~1次
通配字符值构造@H_403_1@符号——[ ] ^
举例说明
- [12@adb\.] 匹配一次1、2、@、a、d、b、. 这6个值元素中任意一个
- [^12@adb\.] 匹配一次除1、2、@、a、d、b、. 这6个值元素之外任意一个
表达式取值@H_403_1@符号——( )
我又把它称为整体界定符。如果没有(),那么值元素符号相当于返回的是单个值,而()可以以数组的形式作为值整体返回。而表达式的结果作为值又可以继续嵌套组合。
事实上,我们可以认为普通字符经“编译”后,变成一个表达式。如匹配:a。事实上是匹配表达式:(a)。