-白话基本语法
| 符号 | 功能 |
|---|---|
| . | 匹配单个任意字符 |
| ^ or \A | ^aaa 匹配以aaa开头的字符串 |
| $or\Z | aaa$匹配已aaa作为结尾,一般情况不会单独使用,因为单独使用只是匹配这个字符串不会匹配额外的 |
| [ ] | b[aeiou]t 单个元素可为集合匹配bat\bet\bit\bot\but |
| - | 范围规范符号,[A-Z] 为A-Z之间任意元素 |
| ^ | 紧跟左括号后面除去这个[]内元素外其他元素匹配 [^abc]除abc外的元素 |
| * | 前面表达式n次或0次出现,记忆方法:*向四周又五个边所以范围最大 |
| + | 前面表达式1次或者n次出现,记忆方法:+向四周有4个就其次 |
| ? | 前面表达式0次或1次出现,记忆方法:?没有所以就0次或1次啦 |
| {} | [0-9]{n,m}匹配n次或者m次0-9的数 |
| \w | 表示[A-Za-z0-9],说白了就是一般用户名设置的字符限制 ,大写版表示不匹配 |
| \d | 表示0-9单个字符,大写版表示不匹配 |
| \s | 表示空格字符,大写版表示不匹配 |
| () | ()括起来得表达式是可以在函数层面进行抽离获取的 |
| 扩展表示法 |
|---|
| (?:\w+.)* 只匹配以\w.结尾的字符串,书上说是这些匹配不会保存下来供给后续的使用和数据检索,自己还没测试到这点,打个※ |
| (?#xxxx) 进行注释 |
| (?=XXX) 如果一个字符串后面跟着XXX 才进行匹配 |
| (?!=XXX) 如果一个字符串后面不是跟着XXX 才进行匹配 |
| (?<=XXX) 如果一个字符串前面是XXX 才进行匹配 |
| (?<!XXX) 如果一个字符串前面部位XXX 才进行匹配 |
| (?(1)y|x) 如果一个匹配组(\1)存在,就与y匹配,否则与x匹配,类似于三目运算符 |
本文详细解析了正则表达式的各种符号及其功能,包括点、元字符、字符集、范围、重复限定符等,帮助读者掌握正则表达式的使用技巧。
2307

被折叠的 条评论
为什么被折叠?



