语法:
StringObject.replace(rgExp,replaceText)
其中StringObject是字符串,rgExp可以是正则表达式对象也可以是字符串,replaceText是替代查找到的字符串。
理解:
可以简单地将这个函数理解为替代,用后者来替代前者的值。
用法举例:
1、rgExp是字符串
var StringObject = "ccxx";
var newStr = StringObject.replace("xx","oo");
alert(newStr);
很明显newStr为:ccoo。
2、rgExp是正则表达式(重点)
首先,如何创建正则表达式:new RegExp(pattern, attributes);
参数:
pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式;attributes 是一个可选的字符串(就是自己需要转化的字符),
包含属性 "g"、"i" 和 "m",分别用于指定全局匹配(global)、区分大小写的匹配(inconsistent)和多行匹配(Multiple)。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。
返回值:
一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么 RegExp() 构造函数将用与指定的 RegExp 相同的模式和标志创建一个新的 RegExp 对象。
如果不用 new 运算符,而将 RegExp() 作为函数调用,那么它的行为与用 new 运算符调用时一样,只是当 pattern 是正则表达式时,它只返回 pattern,而不再创建一个新的 RegExp 对象。
var StringObject = "ccxx";
var reg = new regExp("cc","g");
var newStr = StringObject.replace(reg,"oo");
alert(newStr);
很明显newStr为:ccoo。顺便提一点:var reg = new regExp("cc","g")可以替换为var reg="/cc/g"
StringObject.replace(rgExp,replaceText)
其中StringObject是字符串,rgExp可以是正则表达式对象也可以是字符串,replaceText是替代查找到的字符串。
理解:
可以简单地将这个函数理解为替代,用后者来替代前者的值。
用法举例:
1、rgExp是字符串
var StringObject = "ccxx";
var newStr = StringObject.replace("xx","oo");
alert(newStr);
很明显newStr为:ccoo。
2、rgExp是正则表达式(重点)
首先,如何创建正则表达式:new RegExp(pattern, attributes);
参数:
pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式;attributes 是一个可选的字符串(就是自己需要转化的字符),
包含属性 "g"、"i" 和 "m",分别用于指定全局匹配(global)、区分大小写的匹配(inconsistent)和多行匹配(Multiple)。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。
返回值:
一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么 RegExp() 构造函数将用与指定的 RegExp 相同的模式和标志创建一个新的 RegExp 对象。
如果不用 new 运算符,而将 RegExp() 作为函数调用,那么它的行为与用 new 运算符调用时一样,只是当 pattern 是正则表达式时,它只返回 pattern,而不再创建一个新的 RegExp 对象。
var StringObject = "ccxx";
var reg = new regExp("cc","g");
var newStr = StringObject.replace(reg,"oo");
alert(newStr);
很明显newStr为:ccoo。顺便提一点:var reg = new regExp("cc","g")可以替换为var reg="/cc/g"