请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
限制:0 <= s 的长度 <= 10000
解法一:split() + join()
解题思路
1.首先判断输入是否合法,是否为字符串类型,字符串长度不能太长。
2.再通过split(’ ‘)将空格隔开的单词变为字符串数组中的数组项
3.最后通过join(’%20’)将各个数组项,也就是单词,连接起来完成空格的替换。
function replaceSpace(s){
if(typeof s == 'string' && s.length>0 && s.length<10000){
return s.split(' ').join('%20');
}
return s;
}
解法二:replace() + 正则表达式
解题思路
使用正则表达式匹配空格,replace方法进行替换
function replaceSpace(s){
return s.replace(/ /g,'%20');
}