正则表达式
. :匹配任意字符 除了换行
\w : 匹配任意数字、字母、下划线
\d : 匹配任意数字
\s : 匹配任意空白
^ : 开头
$ : 结尾
- 正则表达式的应用场景:
1. 查找内容
2. 校验文本
- 创建正则对象的两种方式:
1. 格式: var reg = /规则/模式(i:忽略大小写 g:全局查找)
举例:
以m开头 reg = /^m/;
以n结尾 reg = /n$/;
包含两位数字 reg = /\d{2}/;
只有两位数字 reg = /^\d{2}$/;
以3个数字开头 reg = /^\d{3}/;
以x开头y结尾中间有5个数字 reg = /^x\d{5}y$/;
以z开头m结尾中间有3到8个数字 reg = /^z\d{3,8}m$/;
6-10位数字字母下划线 reg = /^\w{6,10}$/;
2. 格式: var reg = new RegExp(规则,模式?);
以z开头m结尾中间有3到8个数字
var reg = new RegExp("^z\\d{3,8}m$","i/g");
- 和正则对象相关的方法
1. 查找内容 exec() execute:执行
var str = "good good study day day up";
var reg = /good/;
reg.exec(str);
var str = "good good study day day up";
var reg = /good/g;
reg.exec(str); //no
reg.exec(str); //no
reg.exec(str); //null
- 如果全局查找,第一次执行找到第一个,第二次执行找第二个 直到找不到的时候返回null
2. 校验 test()
var str = "good good study day day up";
var reg = /^good/;
reg.test(str); //true
var str = "good good study day day up";
var reg = /^Good/;
reg.test(str); //false
var str = "good good study day day up";
var reg = /^Good/i; //i:忽略大小写
reg.test(str); //true
- 字符串对象中和正则相关的方法
1. match() 查找内容 如果全局查找会一次性得到所有的内容
var str = "good good study day day up";
var reg = /day/g; //g:全局查找
var arr = str.match(reg);
2. str.replace(reg,new)
var str = "good good study day day up";
var reg = /day/g;
str.replace(reg,"天");