定义和用法replace()方法用于将字符串中的某些字符替换为其他字符,或者替换与正则表达式匹配的子字符串。语法字符串对象。替换(regexp/substr,替换)。
返回一个新字符串,该字符串是在用替换替换正则表达式的第一个匹配项或所有匹配项后获得的。解释stringObject的replace()方法执行查找和替换的操作。它将在stringObject中查找匹配正则表达式的子字符串,然后用替换替换这些子字符串。如果regexp有全局标志g,replace()方法将替换所有匹配的子字符串。否则,它只替换第一个匹配的子字符串。
替换可以是字符串或函数。如果它是一个字符串,那么每个匹配将被替换为一个字符串。但是,替换中的$字符有特定的含义。如下表所示,它显示从模式匹配获得的字符串将用于替换。
注意:ECMAScript v3规定replace()方法的参数替换可以是函数,而不是字符串。在这种情况下,每个匹配都调用这个函数,它返回的字符串将被用作替换文本。函数的第一个参数是与模式匹配的字符串。以下参数是与模式中子表达式匹配的字符串,可以有0个或更多这样的参数。下面的参数是一个整数,它声明匹配出现在stringObject中的位置。最后一个参数是stringObject本身。示例1在此示例中,我们将在字符串中使用“W3School”而不是“Microsoft”:
脚本类型='text/javascript'var str='访问微软!document.write的输出(str.replace (/Microsoft/,' jb51 '))/脚本:访问jb51!示例2在本例中,我们将执行全局替换。每当发现“微软”时,就会被“W3School”取代:
脚本类型='text/javascript'var str='欢迎来到微软!“Str=str”我们自豪地宣布,微软拥有“str=str”世界上最大的网络开发网站之一。document.write (str。替换(/Microsoft/g,' jb51 ')/脚本输出:欢迎使用jb51!我们自豪地宣布,jb1
拥有世界上最大的网络开发者网站之一。示例3您可以使用本示例中提供的代码来确保匹配的字符串大写字符是正确的:
text='javascript教程';text.replace(/javascript/i,' JAVAScript ');输出:javascript教程示例4在这个示例中,我们将“Doe,John”转换为“John Doe”的形式:
名字='无名氏,约翰';name.replace(/(w )s*,s*(w )/,' $ 2 $ 1 ');输出:JohnDoe示例5在本例中,我们将所有花引号替换为直引号:
名称=' a ',' b ';name.replace(/'([^']*)'/g,“$ 1”);输出:' a ',' b '示例6在此示例中,我们将字符串中所有单词的首字母转换为大写:
名称=' aaa bbb cccuw=name.replace(/bw b/g,function(word){ return word . substring(0,1))。toUpperCase()word . substring(1);} );输出:Aaa Bbb Ccc。
通过本文的简单学习,大家应该对javascript中的replace()方法有所了解,并结合实例进行练习,希望对大家的学习有所帮助。