.replace () Tidak Mengganti Semua Karakter (Javascript) [duplikat]

Nov 22 2020

Saya telah mencoba mengganti semua garis bawah dengan apostrof. Ini berfungsi dengan garis bawah pertama, tetapi tidak pernah dengan garis bawah kedua. Saya mencoba mencari tahu tetapi tidak bisa. Jika Anda punya solusi, tolong bantu saya.

function strReplace() {
  var myStr = 'quick_brown_fox';
  myStr = myStr.replace(/_/, "’");

  // Insert modified string in paragraph
  document.getElementById("myText").innerHTML = myStr;
}
<p id="myText">quick_brown_fox</p>
<button type="button" onclick="strReplace();">Replace</button>

Keluaran:

quick'brown_fox

Output yang diinginkan:

quick'brown'fox

Jawaban

ksav Nov 22 2020 at 08:47

Coba tambahkan tanda pencarian global ke regex Anda untuk mencocokkan semua kemunculannya _

function strReplace() {
  var myStr = 'quick_brown_fox';
  myStr = myStr.replace(/_/g, "’");

  // Insert modified string in paragraph
  document.getElementById("myText").innerHTML = myStr;
}
<p id="myText">quick_brown_fox</p>
<button type="button" onclick="strReplace();">Replace</button>