JavaScript如何实现正则表达式

介绍

这篇文章主要为大家展示了“JavaScript如何实现正则表达式”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript如何实现正则表达式”这篇文章吧。

<强>一什么是正则表达式

//正则表达式(正则表达式)是一个描述字符模式的对象,
//JS定义RegExp类表示正则表达式;
//字符串和正则表达式都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数;

<强>二创建正则表达式

1。创建正则表达式
//JS提供了两种方法创建正则;一种是采用新运算符,另一种是采用字面量方式;
,,,(1).var盒=new RegExp(& # 39;盒# 39;),,,,,,,,,,//第一个参数是字符串;
,,,,,,,,,,,var盒=new RegExp(& # 39;盒# 39;,& # 39;搞笑# 39;);//第二个参数是可选模式修饰符;
,,,(2).var=/箱/盒;,,,,,,,,,,,,,,,,,,,,,//直接使用两个反斜杠;
,,,,,,,,,,,var=/盒/ig盒;,,,,,,,,,,,,,,,//添加模式修饰符;

2。正则表达式对象测试正则表达式
//正则表达式对象包含两个方法:测试()和exec();功能基本相似,用于测试字符串匹配。
(1) test():在字符串中查找是否存在指定的正则表达式并返回布尔值;
//测试()实例
,,,var=new RegExp模式(& # 39;盒# 39;,& # 39;我# 39;),,,,,//创建正则;
,,,var str=& # 39;这是一盒! & # 39;,,,,,,,,,,,,,,//创建字符串;
,,,alert (pattern.test (str)),,,,,,,,,,,,,,,,//通过测试()方法验证是否匹配。
,,,//使用一条语句实现正则匹配。
,,,警报(/盒/信息技术(& # 39;这是一盒! & # 39;));
(2) .exec():在字符串中查找指定正则表达式,若成功,则返回包含该查找字符串的相关信息数组;若失败,返回零;
exec()实例
,,,var模式=/盒/我;
,,,var str=& # 39;这是一盒! & # 39;;
,,,alert (pattern.exec (str)),,,,,,,,,,,,,,,,//匹配返回了数组;

3.字符串对象测试正则表达式

(1) .match(模式):返回中模式的子串或null;
//数学()方法获取匹配数组;
,,,var模式=/盒/搞笑;//开启了全局
,,,var str=& # 39;这是一个盒子!,这是一个盒子! & # 39;;
,,,alert (str.match(模式)),,,,,,,,,,,,,,,//得到数组:[盒,盒]
(2) .search(模式):返回字符串中模式开始位置;
,,,var模式=/盒/ig;
,,,var str=& # 39;这是一个盒子!,这是一个盒子! & # 39;;
,,,console.log (str.search(模式)),,,,,,,,//10;搜索()查找到即返回,否则返回1;
(3) .replace(模式、更换):用替代替换模式;
,,,var模式=/盒/ig;
,,,var str=& # 39;这是一个盒子!,这是一个盒子太# 39;;
,,,console.log (str.replace(模式,& # 39;汤姆# 39;));//将盒子替换成了汤姆。
(4) .split(模式):返回字符串按指定模式拆分的数组;
,,,var模式=//ig;
,,,var str=& # 39;这是一个盒子!,这是一个盒子太强生# 39;;
,,,console.log (str.split(模式)),,,,,,,,,//将空格拆开分组成数组;

<强>三获取控制

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

1。元字符/元符号,,,匹配情况
//字符类:单个字符和数字
只,,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配除换行符外的任意字符;
(a-z0-9),,,,,,,,,,,,,,匹配括号中的字符集中任意字符;
[^ a-z0-9),,,,,,,,,,,匹配不在括号中的字符集中的字符;
\ d ,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配数字;
\ D ,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配非数字;
\ w ,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配字母和数字及_
\ W ,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配非字母和数字及_
//字符类:空白字符
\ 0,,,,,,,,,,,,,,,,,,,,,,,,,,,,匹配空字符;
\ b ,,,,,,,,,,,,,,,,,,,,,,,,,,,null

JavaScript如何实现正则表达式