正则表达式记录
- 锚点
.任意单个字符(除了换行符)^匹配输入字符串的开始位置$匹配输入字符串的结束位置\b单词边界\B非单词边界
- 字符串
[a-z]匹配范围[abc]匹配字符集[^abc]否定字符集\d匹配任意一个数字(0-9)\D匹配任意一个非数字字符\w任意一个字母数字字符(等价于[a-zA-Z0-9_])\W任意一个非字母数字字符\d任意数字\D任意非数字\s空白符\S非空白符
- 量词
*匹配前面的子表达式零次或多次+匹配前面的子表达式一次或多次?匹配前面的子表达式零次或一次{n}匹配确定的n次{n,}至少匹配n次{n,m}最少匹配n次且最多m次
- 分组与捕获
(group)将多个表达式合并为一个组(?:group)非捕获组,不捕获匹配的文本
- 选择与逻辑或
|匹配两项之间的任意一项
- 转义
\用于转义特殊字符或表示特殊序列
- 断言
?=正向前瞻断言,匹配后面跟随特定模式的字符串?!负向前瞻断言,匹配后面不跟随特定模式的字符串?<=正向后瞻断言,匹配前面是特定模式的字符串?<!负向后瞻断言,匹配前面不是特定模式的字符串
- 标志
i忽略大小写g全局搜索m多行搜索
那么现学现卖,我发现原来的引用后面没有空格,我肯定是不会一个一个加的,那么怎么办呢?
想一想再看答案噢XD
(?<=`[^`]*)`:其实是匹配两个反引号中的第二个,而他们之间有任意字符内容。