正则表达式总结
语法
创建
// 直接实例化 |
参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。
参数 [, flags] 是一个可选的字符串,包含属性 “g”(global )、”i” (ignoreCase)和 “m”(multiline)。
子表达式
在正则表达式中,使用括号括起来的内容是一个子表达式,子表达式匹配到的内容会被系统捕获至缓冲区,使用\n(n:数字)来反向引用系统的第n号缓冲区的内容。
使用场景:后面的内容要求与前面的一致,可以使用子表达式
// 查找连续相同的四个数字 |
方括号(字符簇)
var str = "Is this all there is?"; |
方括号 作用
[abc] 查找方括号之间的任何字符。 |
元字符
元字符(Metacharacter)是拥有特殊含义的字符: |
量词
量词 作用 |
RegExp 对象方法
test()
test()
方法检索字符串中是否存在指定的值。返回值是 true 或 false。
var patt1 = new RegExp('e'); |
exec()
exec()
方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
var patt1 = new RegExp('e'); |
compile()
compile()
既可以改变检索模式,也可以添加或删除第二个参数。
var patt1=new RegExp("e"); |
支持正则表达式的 String 对象的方法
search 检索与正则表达式相匹配的值,输出所在位置。
var str = "Visit W3School!" |
match 找到一个或多个正则表达式的匹配。
var str="1 plus 2 equal 3" |
replace 替换与正则表达式匹配的子串。
var str = "Visit Microsoft!" |
split 把字符串分割为字符串数组。
var str = "How are you doing today?" |
常见的正则验证
// 常见的 正则表达式 校验 |
校验数字的表达式
数字:^[0-9]*$ |
校验字符的表达式
汉字:^[\u4e00-\u9fa5]{0,}$ |
特殊需求的表达式
Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ |
钱的输入格式
1.有四种钱的表示形式我们可以接受:"10000.00" 和 "10,000.00", 和没有 "分" 的 "10000" 和 "10,000":^[1-9][0-9]*$ |