一、js的正则表达式
1、什么是正则表达式
正则表达式(regular expression)是一个描述字符模式的对象,ECMAScript的RegExp类表示正则表达式,而String和RegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数。
2、正则表达式的创建方式:
2.1 方式1:new方式创建
var box = new RegExp(‘box‘, ‘ig‘);
2.2 方式2:字面量方式创建
var box = /box/ig;
2.3第一个参数表示被匹配的字符串,第二个参数表示正则的匹配方式,主要有三个匹配类型分别为:
i:忽略被匹配字符串的大小。
g:被匹配的字符串进行全局匹配。
m:被匹配的字符串进行多行匹配。
3、正则表达式的匹配方法:
3.1方法1:new()方法
3.1.1使用new运算符的test方法示例:
var pattern = new RegExp(‘box‘, ‘i‘); //创建正则模式,不区分大小写
var str = ‘This is a Box!‘; //创建要比对的字符串
alert(pattern.test(str)); //通过test()方法验证是否匹配,返回的是个布尔值,true或flase
3.1.2使用字面量方式的test方法示例:
var pattern = /box/i; //创建正则模式,不区分大小写
var str = ‘This is a Box!‘;
alert(pattern.test(str));
3.1.3使用一条语句实现正则匹配
alert(/box/i.test(‘This is a Box!‘)); //模式和字符串替换掉了两个变量
3.2方法2:exec()方法
3.2.1方法与test()类似。
var pattern = /box/i; //创建正则模式,不区分大小写
var str = ‘This is a Box!‘; //创建要比对的字符串
alert(pattern.exec(str)); //匹配了返回数组,否则返回null