.replace () Không thay thế tất cả các ký tự (Javascript) [trùng lặp]

Nov 22 2020

Tôi đã cố gắng thay thế tất cả các dấu gạch dưới bằng một dấu nháy đơn. Nó hoạt động với dấu gạch dưới đầu tiên, nhưng không bao giờ với dấu gạch dưới thứ hai. Tôi đã cố gắng tìm ra nó nhưng không thể. Nếu bạn có một giải pháp, xin vui lòng giúp tôi.

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>

Đầu ra:

quick'brown_fox

Đầu ra mong muốn:

nhanh chóng

Trả lời

ksav Nov 22 2020 at 08:47

Hãy thử thêm cờ tìm kiếm toàn cầu vào regex của bạn để khớp với tất cả các lần xuất hiện của _

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>