分享

JS中实现replaceAll的方法

 树风 2011-04-07
第一次发现JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符. 
而str.replace(/\-/g,"!")则可以全部替换掉匹配的字符(g为全局标志)。
 
js本身没有提供该方法,但是用个正则可以做到。下面是将文本域里面的半角双引号全部替换成全角双引号。

<html>
<head>
<title></title>
<script language="javascript">
function replaceAll()
{
var str = document.all('book').value;
var newValue = str.replace(new RegExp("\"","gm"),"“");
document.all('book').value = newValue;
}
</script>
</head>
<body>
<form>

<input type="button" value="替换" onclick="replaceAll();"/>
<textarea cols="50" rows="10" id="book" name="book">
</textarea>
</form>
</body>
</html>

 

 

方法二:

<script>
String.prototype.replaceAll = function (AFindText,ARepText){
raRegExp = new RegExp(AFindText,"g");
return this.replace(raRegExp,ARepText);
}
alert("axxxbxxxxcxxxxx".replaceAll("x", "_"))
</script>


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多