JavaScript中如何將指定的某個字元全部轉換為其他字元

2020-10-12 16:00:16
    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+正規表示式來改變某個特定字元的全部個體

在這裡插入圖片描述
結果如圖所示

看到這裡 如果對你有幫助的話 請點一個贊 這是對我最大的鼓勵 o3o