在本例中,我们将执行一次全局替换,每当 "Microsoft" 被找到,它就被替换为 "edu.jb51.net":
var str="Visit Microsoft!"; var n=str.replace("Microsoft","edu.jb51.net"); n 输出结果: Visit edu.jb51.net!尝试一下 »
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
如果想了解更多正则表达式教程请查看本站的:RegExp 教程 和 our RegExp 对象参考手册.
该方法不会改变原始字符串。
所有主要浏览器都支持 replace() 方法。
参数 | 描述 |
---|---|
searchvalue | 必须。规定子字符串或要替换的模式的 RegExp 对象。 请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。 |
newvalue | 必需。一个字符串值。规定了替换文本或生成替换文本的函数。 |
类型 | 描述 |
---|---|
String | 一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。 |
JavaScript 版本: | 1.2 |
---|
执行一个全局替换:
var str="Mr Blue has a blue house and a blue car"; var n=str.replace(/blue/g,"red"); n 输出结果: Mr Blue has a red house and a red car尝试一下 »
执行一个全局替换, 忽略大小写:
var str="Mr Blue has a blue house and a blue car"; var n=str.replace(/blue/gi, "red"); n 输出结果: Mr red has a red house and a red car尝试一下 »
在本例中,我们通过 prototype 为 JavaScript 的 String 对象添加方法,来实现将所有 "Microsoft" 替换为 "edu.jb51.net":
String.prototype.replaceAll = function(search, replacement) { var target = this; return target.replace(new RegExp(search, 'g'), replacement); };尝试一下 »