[英]Javascript replace, ignore the first match
我在javascript中有以下腳本
var idText;
var idText1;
idText = "This_is_a_test";
idText1 = idText.replace(/_/g, " ");
alert(idText1);
當我顯示idText1時,它將替換所有下划線並將其放在空格中。 但是,我試圖保留第一個下划線,因此我得到“ This_is a test”。 這有可能嗎?
當然有可能,這是一種選擇:
var n = 0;
idText1 = idText.replace(/_/g, function($0) {
n += 1;
return n === 1 ? $0 : " ";
});
這將使用回調進行替換,從而為每個匹配項增加一個計數器,並通過檢查該計數器的值將第一個匹配項替換為原始文本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.