(?i)abc 表示abc都不区分大小写
a(?i)bc 表示bc不区分大小写
a((?i)b)c 表示只有b不区分大小写
\s 表示可以匹配任何空白字符
\S 表示可以匹配任何非空白字符
\\ 转义符
字符匹配符
符号 | 含义 | 示例 | 说明 | 匹配输入 |
[ ] | 可接收的字符列表 | [abc] | a、b、c中的任意一个字符 | a、b、c |
[^] | 不可接收的字符列表 | [^abc] | 除a、b、c之外的任意一个字符,包括数字和特殊符号 | 1、@ |
- | 连字符 | A-Z | 任意单个大写字母 | A、B、C |
. | 匹配出 \n 之外的所有字符 | a..b | 以a开头,b结尾,中间包括2个任意字符的长度为4的字符串 | aaab、aefb、a35b、a#*b |
\d | 匹配单个数字字符,相当于 [0-9] | \d{3}(\d)? | 包含3个或4个数字的字符串 | 123、1234 |
\D | 匹配单个非数字字符,相当于 [^0-9] | \D(\d)* | 以单个非数字字符开头,后接任意个数字字符串 | a、A342 |
\w | 匹配任意英文字符、数字和下划线,相当于 [a-zA-Z0-9_] | \d{3}\w{4} | 以3个数字字符开头的长度为7的数字字母字符串 | 234abcd、12345Pe |
\W | 匹配不是任意英文字符、数字和下划线,相当于 [^a-zA-Z0-9_] | \W+\d{2} | 以至少1个非数字字母下划线开头,2个数字字符结尾的字符串 | #25、#?@10 |
选择匹配符
符号 | 含义 | 示例 | 说明 | 匹配输入 |
| | 匹配“|”之前或之后的表达式 | ab|cd | ab或者cd | ab、cd |
限定符
符号 | 含义 | 示例 | 说明 | 匹配输入 |
* | 指定字符重复0次或n次(无要求) | (abc)* | 仅包含任意个abc的字符串,等效于\w* | abc、abcabcabc |
+ | 指定字符重复1次或n次(至少一次) | m+(abc)* | 以至少1个m开头,后接任意个abc的字符串 | m、mabc、mabcabc |
? | 指定字符重复0次或1次(最多一次) | m+abc? | 以至少1个m开头,后接ab或abc的字符串 | mab、mabc、mmmab、mmabc |
{n} | 只能输入n个字符 | [abc]{3} | 由abcd中字母组成的任意长度为3的字符串 | abc、dbc、adc |
{n,} | 指定至少n个匹配 | [abcd]{3,} | 由abcd中字母组成的任意长度不小于3的字符串 | aab、dbc、aaabdc |
{n,m} | 指定至少n个但不多于m个匹配 | [abcd]{3,5} | 由abcd中字母组成的任意长度不小于3,不大于5的字符串 | abc、abcd、aaaaa、bcdab |
定位符
符号 | 含义 | 示例 | 说明 | 匹配输入 |
^ | 指定起始字符 | ^[0-9]+[a-z]* | 以至少1个数字开头,后接任意个小写字母的字符串 | 123、6aa、555edf |
$ | 指定结束符 | ^[0-9]\-[a-z]+$ | 以1个数字开头后接连字符“-”,并以至少1个小写字母结尾的字符串 | 1-a |
\b | 匹配目标字符串的边界 | hua\b | 这里说的字符串的边界指的是子串间有空格,或者是目标字符串的结束位置 | liangjunhualjhua junhua |
\B | 匹配目标字符串的非边界 | hua\B | 和\b的含义相反 | liangjunhualjhua junhua |
结语
最后本文章如果对您有一点点帮助的话,求赞 求收藏 求关注,您的支持是我创作的最大动力!
文章粗浅,希望对大家有帮助!