什么是JavaScript正则表达式
正则表达式(regular expression)是一个描述字符模式的对象。使用正则表达式可以进行强大的模式匹配和文本检索与替换功能。
创建JavaScript正则表达式
创建正则表达式和创建字符串相似,创建正则表达式提供了两种方法,一种采用new运算符,另一种采用字面量方式。
1、var box = new RegExp('box'); 第一个参数字符串
var box = new RegExp('box','ig'); 第二个参数可选模式修饰符
2、var box = /Box/; 使用字面量方式的正则
var box = /Box/ig; 第二个斜杠后加模式修饰符
测试正则表达式
RegExp对象包含两个常用方法:test()和exec(),功能基本相似,用于测试字符串匹配。
test()方法在字符串中查找是否存在指定的正则表达式,并返回布尔值,如果存在则返回true,否则返回false。
exec()方法也用于在字符串中查找指定正则表达式,如果exec()执行成功,则返回包含该查找字符串的相关信息数据,否则返回null。(返回结果数组)
var pattern = new RegExp('Box','i');
var str = 'box';
alert(pattern.test(str)); //true
var pattern = /Box/i;
var str = 'box';
alert(pattern.test(str)); //true
var pattern = /Box/i;
var str = 'This is a box';
alert(pattern.test(str)); //true
var pattern = /Box/i;
var str = 'box';
alert(pattern.exec(str)); box
返回的是数组,有就返回数组的值,没有匹配到就返回null
var str ='ss';
alert(pattern.exec(str)); 没有匹配到返回null
使用字符串的正则表达式方法
string对象也提供了4个使用正则表达式的方法
var pattern = /Box/ig; //开启全局
var str = 'This is a Box';
alert(str.match(pattern)); //匹配所有
var pattern = /box/ig;
var str = 'This is a box! That is a Box too!';
alert(str.replace(pattern,'supperman'));
//This is a supperman! That is a supperman too';
var pattern= /!/ig;
alert(str.split(pattern)); //This is a supperman!, That is a supperman too !,
RegExp对象的属性
获取控制
正则表达式元字符是包含特殊含义的字符,他们有一些功能,可以控制匹配模式的方式,反斜杠后的元字符将失去其特殊含义。
o+ 表示1个或者多个o
x? 表示0个或者1个x
x* 表示0个或者多个x
(xyz)+匹配至少一个(xyz)
x{m,n} 匹配至少m个,最多n个x
猜你喜欢
电脑03-25
win10系统如何把此电脑图标添电脑03-23
photoshop 2020 免费直装版无电脑03-22
Windows 10在C盘中的Windows.o电脑02-02
机械键盘各种轴有什么区别?电脑01-23
yandex是什么软件?电脑01-22
bug是什么意思?