JavaScript正则表达式

匿名2020-09-28 18:12:41
优质回答

什么是JavaScript正则表达式

正则表达式(regular expression)是一个描述字符模式的对象。使用正则表达式可以进行强大的模式匹配和文本检索与替换功能。


创建JavaScript正则表达式

创建正则表达式和创建字符串相似,创建正则表达式提供了两种方法,一种采用new运算符,另一种采用字面量方式。


1、var box = new RegExp('box'); 第一个参数字符串

var box = new RegExp('box','ig'); 第二个参数可选模式修饰符


01.jpg


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个使用正则表达式的方法

02.jpg


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对象的属性

03.jpg

获取控制


正则表达式元字符是包含特殊含义的字符,他们有一些功能,可以控制匹配模式的方式,反斜杠后的元字符将失去其特殊含义。


04.jpg


o+ 表示1个或者多个o


x? 表示0个或者1个x


x* 表示0个或者多个x


(xyz)+匹配至少一个(xyz)


x{m,n} 匹配至少m个,最多n个x


本文答由 学识网 回答仅供网友学习交流,若您的权利被侵害,请联系邮箱360815330@qq.com进行删除!
顶部