var str = "pig cat fish、dog horse monkey bear、lion、fox";

笔者在这里定义了一个字符串
如果使用for循环遍历字符串,内部使用replace函数的话

for (j = 0; j <= str.length; j++) {
      if (str.charAt(j) == "o") {
         str.replace("o", "*");
      }
    }

像上面这样 因为replace是有返回值的 并且只会替换第一个字符 因此后面的"o"都是没有改变的
存进数组也一样

 // 3、把字符串中所有的字符o提换成字符*
    var b = [];
    for (j = 0; j <= str.length; j++) {
      if (str.charAt(j) == "o") {
        b[j] = str.replace("o", "*");
      }
    }
    alert(b[b.length - 1]);

由图可以显示出 返回的值依旧是只是第一个改变了 如果想要全部改变 就需要用到正则表达式里面的全局变量了

这是我以前做的笔记 可以看出 如果用 “/正则表达式/g” 这种方式就可以让全部的"o"变为"*"

for (j = 0; j <= str.length; j++) {
    if (str.charAt(j) == "o") {
      var str1 = str.replace(/o/g, "*");
    }
  }
  alert(str1);

前后两个“/ 表示是正则表达式
/o/g 则表示 所有的o 从而可以利用replace+正则表达式来改变某个特定字符的全部个体

 

结果如图所示

看到这里 如果对你有帮助的话 请点一个赞 这是对我最大的鼓励(笔芯)

posted on 2020-10-12 13:39  养乐  阅读(722)  评论(0编辑  收藏  举报