我試圖用String.replace()
用正則表達式替換匹配的表達式。使用正則表達式替換字符串中的匹配
像這樣:
var newStr = loc.replace(/Slide(\d*)/,(i+1));
這個表達式把
https://xxxxxxx.net/qa/club/Slide1.PNG
到
https://xxxxxxx.net/qa/club/1.PNG
我只是想更換「Slide」後面的數字,而不刪除該單詞。我怎樣才能做到這一點?
我試圖用String.replace()
用正則表達式替換匹配的表達式。使用正則表達式替換字符串中的匹配
像這樣:
var newStr = loc.replace(/Slide(\d*)/,(i+1));
這個表達式把
https://xxxxxxx.net/qa/club/Slide1.PNG
到
https://xxxxxxx.net/qa/club/1.PNG
我只是想更換「Slide」後面的數字,而不刪除該單詞。我怎樣才能做到這一點?
使用捕獲組並將其插入到替換中。
loc.replace(/(Slide)\d*/, '$1' + (i+1));
如果單詞永遠是幻燈片,那麼你可以簡單地使用這周圍沒有捕獲任何
loc.replace(/Slide\d*/, 'Slide' + (i+1));
的paratheses第(i + 1)是很重要的字符串連接之前強制數學運算。
如果Slide
後面總是跟一個數字,請在正則表達式中將*
更改爲+
。
我根本不想要「幻燈片」。我只是想要這個號碼。除了數字之外,'+'似乎與'Slide'匹配。 – Houseman
它總是「幻燈片」,你想刪除? –
@JHuangweb我永遠不想刪除「幻燈片」 – Houseman