正则表达式深入浅出
2024-07-04 14:46:58 0 举报
AI智能生成
正则表达式深入浅出
作者其他创作
大纲/内容
\"the\" => The fat cat sat on the mat.
⼀些字⺟和数字组合
1.基本匹配
\".ar\" => The car parked in the garage.
匹配任意单个字符,但不匹配换⾏符
点运算符 .
\"[Tt]he\" => The car parked in the garage.
⽅括号中指定字符集的范围
\"ar[.]\" => A garage is a good place to park a car.
⽅括号的句号就表示句号
字符集 []
\"[^c]ar\" => The car parked in the garage.
匹配除了⽅括号⾥的任意字符
否定字符集 ^
\"\\s*cat\\s*\" => The fat cat sat on the concatenation.
* >=0 次
\"c.+t\" => The fat cat sat on the mat.
+ >=1 次
\"[T]?he\" => The car is parked in the garage.
? 0或1 次
\
{} 范围次
重复次数
\"(c|g|p)ar\" => The car is parked in the garage.
括号中包含的内容将会被看成⼀个整体
() 特征标群
\"(T|t)he|car\" => The car is parked in the garage.
| 或运算符
\"(f|c|m)at\\.?\" => The fat cat sat on the mat.
{ } [ ] / \\ + * . $ ^ | ?
\\ 转码特殊字符
\"^(T|t)he\" => The car is parked in the garage.
^匹配字符串的开头
\"(at\\.)$\" => The fat cat. sat. on the mat.
$匹配字符是否是最后
锚点
2.元字符
除换⾏符外的所有字符
.
任意
匹配所有字⺟数字,等同于 [a-zA-Z0-9_]
\\w
匹配所有⾮字⺟数字,即符号,等同于: [^\\w]
\\W
字⺟
匹配数字: [0-9]
\\d
匹配⾮数字: [^\\d]
\\D
数字
匹配所有空格字符,等同于: [\\t\\\f\\\p{Z}]
\\s
匹配所有⾮空格字符: [^\\s]
\\S
空格
匹配⼀个换⻚符
\\f
匹配⼀个换⾏符
匹配⼀个回⻋符
匹配⼀个制表符
\\t
匹配⼀个垂直制表符
\\v
匹配 CR/LF(等同于 \\ ),⽤来匹配 DOS ⾏终⽌符
\\p
特殊
3.简写字符集
\"(T|t)he(?=\\sfat)\" => The fat cat sat on the mat.
xxx(?=...) 正先⾏断⾔
\"(T|t)he(?!\\sfat)\" => The fat cat sat on the mat.
xxx(?!...) 负先⾏断⾔
\"(?<=(T|t)he\\s)(fat|mat)\" => The fat cat sat on the mat.
(?<=...)xxx 正后发断⾔
\"(?<!(T|t)he\\s)(cat)\" => The cat sat on cat.
(?<!...)xxx 负后发断⾔
4.零宽度断⾔(前后预查)
\"The\" => The fat cat sat on the mat.
\"/The/gi\" => The fat cat sat on the mat.
i 忽略⼤⼩写
\"/.(at)/\" => The fat cat sat on the mat.
\"/.(at)/g\" => The fat cat sat on the mat.
g 全局搜索
\"/.at(.)?$/\" => The fat\ cat sat\ on the mat.
\"/.at(.)?$/gm\" => The fat\ cat sat\ on the mat.
m 多⾏修饰符
5.标志
\"/(.*at)/\" => The fat cat sat on the mat.
贪婪匹配(默认)
\"/(.*?at)/\" => The fat cat sat on the mat.
惰性匹配(?转换)
6.贪婪匹配与惰性匹配
正则表达式深入浅出
0 条评论
回复 删除
下一页