正则表达式
字符范围匹配
正则表达式 | 说明 | 正确 | 错误 |
A | 精准匹配单个字符 | A | a |
x | y | 允许出现2个字符 | y | n |
[xyz] | 字符合集,允许出现集合内任意单个字符 | z | c |
[a-z] [A-Z] [0-9] |
字符范围 | a D 8 |
A a A |
[^xyz] [^0-9] |
集合内字符不允许出现 | 0 A |
y 8 |
元字符
正则表达式 | 说明 | 正确 | 错误 |
\d | 匹配任意单个数字 | ||
\D | 匹配\d规则之外的任意单个字符 | ||
\w | 匹配任意单个字母数字下划线 | Y | & |
\W | 匹配\w 之外的任意单个字符 | ||
\s | 匹配单个空格 | x | |
\n | 匹配单个换行符 | ||
. | 匹配任意单个字符(换行符除外) | -- | -- |
\. | 特殊字符,只匹配. | . | 1 |
多次重复匹配
正则表达式 | 说明 | 正确 | 错误 |
A{3} | 精准N次匹配 | AAA | AA |
A{3,} | 最少出现N次 | AAA | AA |
\d{3,5} | 约定出现最少次数与最大次数 | 1234 | 12 |
\d* | 可以出现零次至无限次,相当于{0,} | 1234 | -- |
\d+ | 最少出现一次,相当于{1,} | 12 | |
\d? | 最多出现一次,相当于{0,1} | 1 | 12 |
定位匹配
正则表达式 | 说明 | 正确 | 错误 |
^A.* | 头匹配 | ABC | CBA |
.*A$ | 尾匹配 | CBA | ABC |
^A.*A$ | 全字匹配(头尾匹配) | ACCCA | ACCCB |
贪婪匹配于非贪婪匹配
贪婪匹配时尽可能多匹配多的数字,非贪婪匹配时尽可能少的去匹配数字.
eg: 一串数字123456789
贪婪正则: \d{6,8} 会多匹配 12345678
非贪婪正则: \d{6,8}? 会少匹配 123456
表达式分组
示例: abababcdcdcd 正则表达式:(ab){3}(cd){3} 多个分组则可以用 | 来实现
特别提示:[\u4e00-\u9fa5] 中文区间
eg :
document.getElementById("name").onsubmit = function () {
//在js中定义正则表达式可以这样/表达式/
var regex=/^[\u4e00-\u9fa5]{2,8}$/;
var name= document.getElementById("name")