5 替換空格
阿新 • • 發佈:2018-10-13
turn exp lan string placement school func app target
原來一個空格字符,替換之後變成 ‘%’、‘2’、‘0’ 這3個字符,因此字符串會變長。如果是在原來的字符串上進行替換,就可能覆蓋修改在該字符串後面的內存。如果是新創建的字符串並在新的字符串上進行替換,我們可以自己分配足夠多的內存。因為有兩種不同的解決方案,所以要問清楚,到底需求是哪一種情況。
題目描述
請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串為We Are Happy.則經過替換之後的字符串為We%20Are%20Happy。原來一個空格字符,替換之後變成 ‘%’、‘2’、‘0’ 這3個字符,因此字符串會變長。如果是在原來的字符串上進行替換,就可能覆蓋修改在該字符串後面的內存。如果是新創建的字符串並在新的字符串上進行替換,我們可以自己分配足夠多的內存。因為有兩種不同的解決方案,所以要問清楚,到底需求是哪一種情況。
1 functionreplaceSpace(str) 2 { 3 return str.replace(/ /g,‘%20‘); 4 }
replace() 方法用於在字符串中用一些字符替換另一些字符,或替換一個與正則表達式匹配的子串。
stringObject.replace(regexp/substr,replacement)
replace() 傳送門
方法二:字符串的查詢
1 function replaceSpace(str) 2 { 3 let output = ‘‘; 4 for (let i=0,len=str.length; i<len; i++) {5 if(str[i] == ‘ ‘) { 6 output += ‘%20‘; 7 }else{ 8 output += str[i]; 9 } 10 } 11 return output; 12 }
5 替換空格