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