Open MJingv opened 5 years ago
https://regexper.com
https://regex101.com/
在 Regex 的 Pattern 中,操作元,即,被运算的 “值”,被称为原子(Atom)
在方括号中,我们可以使用两个操作符:-(区间)和 ^(非)
一个集合原子中,^ 符号只能用一次,只能紧跟在 [ 之后。否则不起作用
[^abc] 表示 abc 以外的其它任意字符,即,非[abc]
[a-zA-Z0-9_]
[\f\n\r\t\v]
\S 任意非空白
d digits w word characters s spaces
f flip 分页符 n new line 换行符 r return 换行符 t tab 制表符 v vertical tab 纵向制表符
组合
捕获
er两个原子 'e'和'r'
[er]一个原子 'e' or 'r' (er)一个原子 'er'
[er]一个原子 'e' or 'r'
(er)一个原子 'er'
+ ? * {n, m} 它们是用来限定位于它们之前的原子允许出现的个数;不加数量限定则代表出现一次且仅出现一次
+ ? * {n, m}
=1 ? 0,1
=0 {n} n次 {n,} >=n {n,m} [n,m]
注意:中括号的 | 不被当作特殊符号,而是被当作 | 这个符号本身。在中括号中的圆括号,也被当作圆括号 () 本身,而无分组含义
/正则表达式主体/修饰符(可选)
起始位置
是否匹配某个模式
数组
null
https://regexper.com
https://regex101.com/
原子
在 Regex 的 Pattern 中,操作元,即,被运算的 “值”,被称为原子(Atom)
本义字符
集合原子
在方括号中,我们可以使用两个操作符:-(区间)和 ^(非)
一个集合原子中,^ 符号只能用一次,只能紧跟在 [ 之后。否则不起作用
[^abc] 表示 abc 以外的其它任意字符,即,非[abc]
类别原子
[a-zA-Z0-9_]
[\f\n\r\t\v]
\S 任意非空白
d digits w word characters s spaces
f flip 分页符 n new line 换行符 r return 换行符 t tab 制表符 v vertical tab 纵向制表符
边界原子
组合原子
组合
(Grouping),就是我们刚刚讲到的作用;而另外一个作用是捕获
(Capturing)数量操作符
+ ? * {n, m}
它们是用来限定位于它们之前的原子允许出现的个数;不加数量限定则代表出现一次且仅出现一次或操作符 |
匹配并捕获
非捕获匹配