假設我有一個像這樣的字串
丹尼是?詹姆斯是?艾倫是?
我想將其替換為
丹尼很棒 詹姆斯很棒 艾倫很棒
我怎樣才能使用replace它?
我正在嘗試做類似的事情
string.replace(/\?/g, 'great ').replace(/\?/g, 'wonderful ').replace(/\?/g, 'magnificent');
但我只是得到:
丹尼很棒 詹姆斯很棒 艾倫很棒
如果情況是這樣的:
丹尼是?詹姆斯是 # 艾倫是 $
string.replace(/\?/g, 'great ').replace(/\#/g, 'wonderful ').replace(/\$/g, 'magnificent');
它會按預期作業,但由于它是相同的角色,因此無法正常作業。
有沒有比做下面的事情更簡潔的方法來實作這一目標?
string = string.replace(/\?/g, 'great ')
string = string.replace(/\?/g, 'wonderful ')
string = string.replace(/\?/g, 'magnificent');
uj5u.com熱心網友回復:
您正在使用帶有/g(意思是:“全域”)選項的正則運算式的替換函式,這意味著它將替換“?” 字串中的任何地方。
只替換一次出現的“?” 一次,只需使用普通字串查找,例如:string.replace('?', 'great')
所以,你的完整例子是:
string = string.replace('?', 'great ')
string = string.replace('?', 'wonderful ')
string = string.replace('?', 'magnificent');
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/399292.html
標籤:javascript 细绳 代替
上一篇:字串不等于任何東西,但也不等于任何東西。無法設定變數
下一篇:將多維陣列轉換為字串的最佳方法
