JavaScript正则表达式函数详解:match、exec、test、search与replace
33 浏览量
更新于2024-08-30
收藏 100KB PDF 举报
本文主要介绍了JavaScript中的六个正则表达式函数——match、exec、test、search、replace和split的使用方法,重点讲述了它们在处理字符串和模式匹配时的不同特性和应用场景。
1. match方法
match方法用于在字符串中查找与正则表达式匹配的内容,并返回一个数组。数组的第一个元素是匹配的整个字符串,后续元素是捕获组的内容。如果正则表达式带有全局标志`g`,match会返回所有匹配的结果,而不是仅返回第一个。例如:
```javascript
function MatchDemo() {
var r, re;
var s = "The rain in Spain falls mainly in the plain";
re = /(a)in/gi;
r = s.match(re);
console.log(r); // ["ain", "ain", "ain", "ain"]
}
```
2. exec方法
exec方法同样用于在字符串中查找匹配正则表达式的部分,但它只会返回第一个匹配的结果,且返回的是一个包含多个属性的对象数组,包括输入字符串、匹配位置、子匹配等信息。如果无匹配,则返回null。例如:
```javascript
function RegExpTest() {
var src = "http://sumsung753.blog.163.com/blog/Iloveyou!";
var re = /\w+/g;
var arr;
while ((arr = re.exec(src)) != null) {
console.log(arr);
}
}
```
3. test方法
test方法用于测试字符串是否包含符合正则表达式规则的匹配项,返回布尔值。如果找到匹配项,返回true;否则,返回false。例如:
```javascript
var str = "Hello, World!";
var regex = /World/;
console.log(regex.test(str)); // true
```
4. search方法
search方法也用于在字符串中查找正则表达式的匹配项,但返回的是匹配项的索引位置,如果找不到则返回-1。例如:
```javascript
var str = "Hello, World!";
var pos = str.search(/World/);
console.log(pos); // 7
```
5. replace方法
replace方法用于替换字符串中与正则表达式匹配的部分,可以使用回调函数生成替换文本。返回替换后的新字符串。例如:
```javascript
var str = "Hello, World!";
var newStr = str.replace(/World/, "JavaScript");
console.log(newStr); // "Hello, JavaScript!"
```
6. split方法
split方法根据正则表达式将字符串分割成数组。默认情况下,它会移除匹配的子字符串并返回剩余的部分。例如:
```javascript
var str = "Hello, World!";
var arr = str.split(/, /);
console.log(arr); // ["Hello", "World!"]
```
了解并熟练运用这些正则表达式函数,能帮助开发者在JavaScript中更有效地处理字符串和进行模式匹配,提高代码的效率和可读性。在实际开发中,应根据具体需求选择合适的函数来处理字符串。
640 浏览量
339 浏览量
点击了解资源详情
2022-01-21 上传
109 浏览量
246 浏览量
232 浏览量
612 浏览量
2012-03-21 上传
weixin_38564085
- 粉丝: 5
- 资源: 937
最新资源
- CUDA9.0+cudnn7安装大礼包.zip
- 拖动滑块进行验证
- Docker零基础学习全套教程(含项目实战和源码)
- tarea-express-v1
- 网钛淘拍系统官方网下载v1.51
- 着作权法案例判决评析——计算机程序之保护
- uorhousepositions:简单的Powershell脚本可下载UOR房屋位置并创建地图文件
- multisetdiff:与 setdiff 类似,但 A 的任何重复元素在 B 中每次出现时仅被删除一次-matlab开发
- 愤怒的小鸟-阶段4:愤怒的小鸟-阶段4
- devopsproject1
- gcc内网离线安装包,CentOS7亲测可用
- ion-tools:工具和实用程序,使ION网络工作和使用ION DID变得轻松自如
- 工程建设项目管理体制
- RecommenderOnTf2:基于TensorFlow 2.3实现的推荐系统神经网络,主要关注模型构建,基本不包含数据预处理阶段
- LFO - Maker:用于构建不同 LFO 类型的系统-matlab开发
- diabetic-retinopathy:基于人眼图像的糖尿病性视网膜病变分类系统