在 JavaScript 中使用 replace() 函数
replace() 函数用于查找和替换字符串中指定的值。其语法如下:
1
|
string.replace(searchValue, replaceValue)
|
其中:
- string 是要搜索和替换的字符串。
- searchValue 是要查找的值。
- replaceValue 是要替换它的值。
用法:
replace() 函数返回一个新字符串,其中所有与 searchValue 匹配的子字符串都已被 replaceValue 替换。原始字符串不会被修改。
示例:
1
2
3
|
let str = "Hello, world!" ;
let newStr = str.replace( "world" , "JavaScript" );
console.log(newStr); // 输出:"Hello, JavaScript!"
|
选项:
replace() 函数还可以使用可选的正则表达式标志(flags)来指定替换行为:
- g - 全局替换:替换所有匹配项。
- i - 不区分大小写:忽略大小写进行替换。
- m - 多行替换:将每一行视为单独的字符串进行替换。
示例:
1
2
3
|
let str = "Hello, WORLD! Hello, world!" ;
let newStr = str.replace(/world/gi, "JavaScript" );
console.log(newStr); // 输出:"Hello, JavaScript! Hello, JavaScript!"
|
在上面的示例中,正则表达式 /world/g 匹配所有实例的 "world" 字符串(不区分大小写)。
其他注意事项:
- 如果 searchValue 在字符串中找不到,replace() 函数将返回原始字符串。
- 对于包含正则表达式字符的 searchValue,需要对它进行转义或使用 RegExp() 构造函数创建正则表达式对象。
- 对于空字符串的 searchValue,replace() 函数将替换字符串中的所有内容。