标签:需要 查找 这一 转义 3.1 ever 空白 code 下划线
正则表达式的的字符及其含义:
\ :将下一个字符标记为一个特殊字符,或一个原义字符 ,或者一个向后引用,或者一个八进制转义符
^:匹配输入字符串的开始位置
$:匹配输入字符串的结束位置
*:匹配前面的子表达式零次或者多次 =>fo* 匹配f 或者foo等
+:匹配前面的子表达式一次或者多次 =>fo+匹配fo或者foo等
?:匹配前面的子表达式零次或者一次 =>fo?匹配f或者fo
{n}:n是一个非负整数 匹配确定的n次 =>o{2} 可以匹配food 不匹配old
{n,}:n是一个非负整数 至少匹配n次
{n,m}:最少匹配n次最多匹配m次
?:当紧跟在其他限制符之后 表示非贪婪匹配 尽可能少的匹配搜索的字符串 =>o+?匹配o 而o+匹配所有的o
.:匹配除了“\n“之外的任意的单个字符 要想匹配\n在内的任意字符 使用(,I\n)
(pattern):匹配pattern并且获取这一匹配
(?:pattern):匹配pattern但是不获取匹配结果
(?=pattern):正向肯定预查 在任何匹配pattern的字符串开始匹配查找的字符串 =>Windows(?=95|98|NT|2000)
”能匹配“Windows2000
”中的“Windows
”,但不能匹配“Windows3.1
”中的“Windows
”
(?!pattern):正向否定预查 在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如“Windows(?!95|98|NT|2000)
”能匹配“Windows3.1
”中的“Windows
”,但不能匹配“Windows2000
”中的“Windows
”
(?<=pattern):反向肯定预查 与正向肯定预查类似 但是方向相反 (?<=95|98|NT|2000)Windows”能匹配“2000Windows”中的“Windows”,但不能匹配“3.1Windows”中的“Windows”
(?<!pattern):反向否定预查 与正向否定类似 只是方向相反 (?<!95|98|NT|2000)Windows
”能匹配“3.1Windows
”中的“Windows
”,但不能匹配“2000Windows
”中的“Windows
xIy:匹配x 或者y
[xyz]:匹配所包含的任意字符
[^xyz]:匹配未包含的任意字符
[a-z]:匹配指定范围a-z的任意字符
[^a-z]:匹配不在指定范围内的任意字符
\b:匹配一个单词边界 也就是单词和空格之间的位置 =>“er\b
”可以匹配“never
”中的“er
”,但不能匹配“verb
”中的“er
”
\B:匹配一个非单词边界
\cx:匹配由x指明的控制字符
\d:匹配一个数字字符 等价[0-9]
\D:匹配一个非数字字符 等价[^0-9]
\f:匹配一个换页符
\n:匹配一个换行符
\r:匹配一个回车符
\s:匹配任何空白字符 包括空格 制表符 换页符 ==[ \f\n\r\t\v]
\S:匹配任何非空白字符
\t:匹配一个制表符
\v:匹配一个垂直制表符
\w:匹配包括下划线的任何单词字符==[A-Za-z0-9]
\W:匹配任何非单词字符
标签:需要 查找 这一 转义 3.1 ever 空白 code 下划线
原文地址:https://www.cnblogs.com/yzstyle/p/10861417.html