正则表达式
作用: 验证数据的格式
正则如何验证
match() 验证成功返回的是值 ; 验证失败 返回的是null —字符串用法
test() 验证成功返回的是 true 验证失败返回的是 false —正则对象的用法
正则表达式修饰符
修饰符 可以在全局搜索中不区分大小写:
修饰符 | 描述 |
---|---|
i | 执行对大小写不敏感的匹配。 |
g | 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 |
m | 执行多行匹配。 |
正则表达式符号
\ 转义字符 特殊字符
^ 标记表达式的开始位置
$ 标记表达式的结束位置
* 匹配前面的子表达式 零次或者多次 zo* zooo zoo z
+ 匹配前面的子表达式 一次或者多次
? 匹配前面的子表达式零次或者一次
{} 代表匹配前面的表达式的次数
{n} n代表非负整数 匹配前面的表达式n次
{n,} n代表非负整数 匹配前面的表达式至少n次,或者多次
{n,m} n代表非负整数 匹配前面的表达式至少n次,或者 m次
[] 表示字符集
[xyz] 匹配其中的某一个字符
[^xyz] 匹配除过xyz的其他字符
[a-z]匹配任何从a-z的字母
[A-Z]匹配任何从A-Z的字母
[0-9]匹配任何从0至9的数字。
\d 匹配数字字符 等价于[0-9]
\D [^0-9]
\s 匹配空白字符串 [\r\n\f\t\v]
\S 匹配的是非空白字符 [^\r\v\n\t\f]
\w 匹配数字字符下划线 [A-Za-z0-9_]
\W 匹配非数字字符下划线 [^A-Za-z0-9_]
| 或
() 代表子表达式
使用 RegExp 对象
在 JavaScript 中,RegExp 对象是一个预定义了属性和方法的正则表达式对象。
/*声明正则对象*/
var g3 = "www.baidu.com"
var reg1 = new RegExp(/^www\.[a-zA-Z0-9]+\.(com|cn)/);//括号里面是正则表达式
console.log(reg1.test(g3));
字符串中含有匹配的文本,所以该实例输出为:true
使用 test()
test() 方法是一个正则表达式方法。
test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。
以下实例用于搜索字符串中的字符 “e”:
var g3 = "www.baidu.com";
var reg1 = new RegExp(/^www\.[a-zA-Z0-9]+\.(com|cn)/);
console.log(reg1.test(g3));
字符串中含有匹配的文本,所以该实例输出为:true
使用match()
match()//括号里面是正则表达式;
match() 方法将检索字符串 String Object,以找到一个或多个与 regexp 匹配的文本
match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。
var tel = "15789439267";
var g = tel.match(/^[1][34578][0-9]{9}$/);
console.log(g);
字符串中含有匹配的文本,所以该实例输出为:Array [ “15789439267” ];