js替换字符串中所有指定的字符

第一次发现JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符. 
而str.replace(/\-/g,"!")则可以全部替换掉匹配的字符(g为全局标志)。

replace() 
The replace() method returns the string that results when you replace text matching its first argument 
(a regular expression) with the text of the second argument (a string). 
If the g (global) flag is not set in the regular expression declaration, this method replaces only the first 
occurrence of the pattern. For example,

var  s = "Hello. Regexps are fun." ;s = s.replace(/\./, "!" ); // replace first period with an exclamation pointalert(s);

produces the string “Hello! Regexps are fun.” Including the g flag will cause the interpreter to 
perform a global replace, finding and replacing every matching substring. For example,

var  s = "Hello. Regexps are fun." ;s = s.replace(/\./g, "!" ); // replace all periods with exclamation pointsalert(s);

yields this result: “Hello! Regexps are fun!”

所以可以用以下几种方式.:
string.replace(/reallyDo/g, replaceWith);
string.replace(new RegExp(reallyDo, ‘g‘), replaceWith);

string:字符串表达式包含要替代的子字符串。
reallyDo:被搜索的子字符串。
replaceWith:用于替换的子字符串。

Js代码

  1. <script type="text/javascript">
  2. String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
  3. if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
  4. return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);
  5. } else {
  6. return this.replace(reallyDo, replaceWith);
  7. }
  8. }
  9. </script>

来源:http://fuleonardo.iteye.com/blog/339749

js替换字符串中所有指定的字符

时间: 2024-12-18 02:30:03

js替换字符串中所有指定的字符的相关文章

js 替换字符串中所有匹配的字符

var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str1); // 打印结果: obcadeacf var str2 = str.replace(/a/g, 'o'); alert(str2); //打印结果: obcodeocf, 注意: 此处replace的第一个参数为正则表达式,/g是全文匹配标识. 原文地址:https://www.cnblogs.com/wind-wang/p/9648146.html

使用JS替换URL中的指定参数

现有一个URL: http://abcccc.com/blog?query_key=name&query_value=abc 想要替换其中的参数:query_key,用JS该怎么做呢? 这里记录一种方案: var key = ‘title‘; var value = ‘defg‘; var currentURL = http://www.561.cn/blog?query_key=name&query_value=abc; var targetURL = ‘‘; if ((currentU

用js识别字符串中的英文字母字符和非字符(汉字)

前不久去阿里的在线笔试,最后一道题可算是难倒了我,题目大概是这样的:用原生的js实现字符串中的英文字母字符和汉字的识别,汉字按照两个单位计算,英文和字符按照一个单位计算,乍一想真不知道有什么好办法,以前写c代码太多,就用c代码对ascii的办法来,笔试结束字符才知道,js是很高大上的玩意儿,这招行不通.在这里我介绍一种很简单很靠谱的方法,用unicode字符集的办法来解决. 首先脑补一下小知识:unicode字符集数字0 - 128是英文字母字符(半角)的范畴,在这以外是其他字符(全角),用js

JS判断字符串中是否存在某个字符

用String类中的indexOf函数,例如:String str="we find out sth";if(str.indexOf("o")==-1){ //等于-1表示这个字符串中没有o这个字符//do something}else{//do something}

JS 替换字符串中多次出现的某个字符

/**方法一: *替换次数确定,并且次数较少时:使用此法 */ var via = "某地1#某地2#某地3"; var viaDeal = via.replace("#","-->").replace("#","-->"); /**  * 某地1-->某地2-->某地3   */ /** *   方法二: *替换次数不确定,或者次数多时,使用此法 */ var via ="

js替换字符串中特殊字符

var reg=/\\|\/|\?|\?|\*|\"|\“|\”|\'|\‘|\’|\<|\>|\{|\}|\[|\]|\[|\]|\:|\:|\.|\^|\$|\!|\~|\`|\|/g; var temp = value.replace(reg,""); 以上正则表达式可以替换 斜杠.反斜杠.?.*.[].[].!.~.`.^.$.!.:等特殊字符,包含windows文件命名不能出现的所有特殊字符

JS 去除字符串中的最后一个字符

var str = 'Hello World!'; str = str.substr(0,str.length-1); alert(str);

*字符串-01. 在字符串中查找指定字符

1 /* 2 * Main.c 3 * D1-字符串-01. 在字符串中查找指定字符 4 * Created on: 2014年8月18日 5 * Author: Boomkeeper 6 *****部分通过****** 7 */ 8 9 #include <stdio.h> 10 11 int mysearch(char ch, const char str[], int length) { 12 13 int j, ret = -1; 14 15 for (j = 0; j < le

JavaScript替换字符串中最后一个字符

1.问题背景 在一个输入框中,限制字符串长度为12位.利用键盘输入一个数字,会将字符串中最后一位替换,比方:111111111111.再输入一个3,会显示111111111113 2.详细实现 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html x