«

JavaScript 中正则替换 replace 的用法示例

时间:2024-2-22 14:09     作者:韩俊     分类: Javascript


本文介绍 replace 在 js 中,一些在开发中常会遇到的问题的知识总结。

定义和用法

replace() 方法用于在字符串中常用的一些字符串替换。 在我们的日常开发中常常会遇到字符串替换的相关问题。

语法

stringObject.replace(regexp,replacement)

stringObject:字符串对象

regexp:正则表达式

replacement: 你需要替换成的内容,这里可以是字符串,也可以是函数。

返回值

一个新的字符串,对应需要替换的内容已被替换掉。

具体实践

Tips: 上文中介绍的 replacement 【对应需要替换的替换项】

其中包含了一部分具体的正则符号的内容,在开始实践之前,先介绍其中的正则符号的意义。

1.  $1、$2、...、$99  与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。 
2. $& 与 regexp 相匹配的子串。
3. $` 位于匹配子串左侧的文本。 
4. $' 位于匹配子串右侧的文本。 
5. % 直接量符号。 

好了,下面,开始我们的具体实践。

题目:

有字符串 'abc345efgabcab'

1. 去掉字符串中的 a、b、c 字符。
2. 将字符串中的数字都加上 '[]'
3. 将字符串中的数字的值都乘以 2
4. 去掉字符串中数字之前的所有内容
5. 去掉字符串中数字之后的所有内容
6. 将字符串中的 'abc' 都替换成 gg
7. 将字符串中的数字都替换成 +

好,题目就是这些了。我们开始吧

题目一 :去掉字符串中的 a、b、c 字符。

var str = 'abc345efgabcab';
str.replace(/[a-c]/g, '');//或者:str.replace(/[a|b|c]/g, '');
输出结果:
// "345efg"

题目二 :将字符串中的数字 都加上 '[]'

var str = 'abc345efgabcab';
str.replace(/[\d]/g, function(num) { 
    return '[' + num + ']';
});//或者:str.replace(/[\d]/g, '[' + "$&" + ']');
输出结果:
// "abc[3][4][5]efgabcab"

题目三 :将字符串中的数字的值都乘以 2

var str = 'abc345efgabcab';
str.replace(/[\d]/g, function(num) { 
    return 2 * num 
});
输出结果:
// "abc6810efgabcab"

题目四 :去掉字符串中首个数字之前的所有内容

var str = 'abc345efgabcab';
var numer = str.match(/[\d]/g)[0];
var numerIndex = str.indexOf(numer);
var res = str.substring(numerIndex,str.length);
输出结果:
// "345efgabcab"

题目五 :去掉字符串中数字之后的所有内容

var str = 'abc345efgabcab';
var numers = str.match(/[\d]/g);
var numer = numers[numers.length - 1];
var numerIndex = str.indexOf(numer);
var res = str.substring(0, numerIndex + 1);
输出结果:
// "abc345"

题目六 :将字符串中的 'abc' 都替换成 gg

var str = 'abc345efgabcab';
str.replace(/abc/g, 'gg');
输出结果:
// "gg345efgggab"

题目七 :将字符串中的数字都替换成 +

var str = 'abc345efgabcab';
str.replace(/[\d]/g, '+');
输出结果:
// "abc+++efgabcab"

以上就是基本的入门级别的 replace 示例,我们常常会在工作中遇到的问题。

标签: javascript

热门推荐