题目
URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。)
解题思路
已经知道字符串的真实长度,直接使用substr先将字符串截取出来,也可以使用substring,但是使用方法不同
let str = 'abcdef';
console.log(str.substr(1,3)); // bcd
console.log(str.substring(1,3)); // bd 不会截取到第二个参数的位置
然后使用replaceAll直接替换,使用replace只能替换一个位置
let str = 'abdcdef';
console.log(str.replace('d', 'x')) //abxcdef
console.log(str.replaceAll('d', 'x')) //abxcxef
代码
/**
* @param {string} S
* @param {number} length
* @return {string}
*/
var replaceSpaces = function(S, length) {
return S.substr(0,length).replaceAll(' ','%20');
};