版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/qq_34548401/article/details/85009170
正则表达式
- 使用正则表达式的test()方法进行匹配验证,参数为待匹配串。
- 字符串匹配公式
- 格式:/^相关公式$/
常用
字符 |
描述 |
\ |
将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“`n`”匹配字符“`n`”。“`\n`”匹配一个换行符。串行“`\\`”匹配“`\`”而“`\(`”则匹配“`(`”。 |
^ |
匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“`\n`”或“`\r`”之后的位置。 |
$ |
匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配“`\n`”或“`\r`”之前的位置。 |
* |
匹配前面的子表达式零次或多次。例如,zo*能匹配“`z`”以及“`zoo`”。*等价于{0,} |
+ |
匹配前面的子表达式一次或多次。例如,“`zo+`”能匹配“`zo`”以及“`zoo`”,但不能匹配“`z`”。+等价于{1,}。 |
? |
匹配前面的子表达式零次或一次。例如,“`do(es)?`”可以匹配“`does`”或“`does`”中的“`do`”。?等价于{0,1}。 |
{n} |
n是一个非负整数。匹配确定的n次。例如,“`o{2}`”不能匹配“`Bob`”中的“`o`”,但是能匹配“`food`”中的两个o。 |
{n,} |
n是一个非负整数。至少匹配n次。例如,“`o{2,}`”不能匹配“`Bob`”中的“`o`”,但能匹配“`foooood`”中的所有o。“`o{1,}`”等价于“`o+`”。“`o{0,}`”则等价于“`o*`”。 |
{n,m} |
m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。例如,“`o{1,3}`”将匹配“`fooooood`”中的前三个o。“`o{0,1}`”等价于“`o?`”。请注意在逗号和两个数之间不能有空格。 |
[xyz] |
字符集合。匹配所包含的任意一个字符。例如,“`[abc]`”可以匹配“`plain`”中的“`a`”。 |
[^xyz] |
负值字符集合。匹配未包含的任意字符。例如,“`[^abc]`”可以匹配“`plain`”中的“`p`”。 |
[a-z] |
字符范围。匹配指定范围内的任意字符。例如,“`[a-z]`”可以匹配“`a`”到“`z`”范围内的任意小写字母字符。 |
[^a-z] |
负值字符范围。匹配任何不在指定范围内的任意字符。例如,“`[^a-z]`”可以匹配任何不在“`a`”到“`z`”范围内的任意字符。 |
\d |
匹配一个数字字符。等价于[0-9]。 |
\D |
匹配一个非数字字符。等价于[^0-9]。 |
\w |
匹配包括下划线的任何单词字符。等价于“`[A-Za-z0-9_]`”。 |
\W |
匹配任何非单词字符。等价于“`[^A-Za-z0-9_]`”。 |
常用
事项 |
表达式 |
用户名 |
/^[a-z0-9_-]{3,16}$/ |
密码 |
/^[a-z0-9_-]{6,18}$/ |
十六进制值 |
/^#?([a-f0-9]{6}\|[a-f0-9]{3})$/ |
电子邮箱 |
/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/ |
URL |
/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/ |
IP 地址 |
/((2[0-4]\d\|25[0-5]\|[01]?\d\d?)\.){3}(2[0-4]\d\|25[0-5]\|[01]?\d\d?)/ /^(?:(?:25[0-5]\|2[0-4][0-9]\|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]\|2[0-4][0-9]\|[01]?[0-9][0-9]?)$/ |
HTML 标签 |
/^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>\|\s+\/>)$/ |
删除代码\注释 |
(?<!http:\|\S)//.*$ |
Unicode编码中的汉字范围 |
/^[\u2E80-\u9FFF]+$/ |