替换空格之前端面
程序员文章站
2022-08-14 23:28:50
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为we are happy.则经过替换之后的字符串为we%20are%2...
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为we are happy.则经过替换之后的字符串为we%20are%20happy。
题目说的不太严谨:
1.能不能允许连续出现多个空格?
2.若有可能连续多个空格,用多个还是单个20%进行替换?
分三种情况解答
1.不会出现连续多个空格:
直接用空格将字符串切割成数组,在用20%进行连接。
function replacespace(str)
{
return str.split(' ').join('%20');
}
2.允许出现多个空格,每个空格均用一个20%替换:
用正则表达式找到所有空格依次替换
function replacespace(str)
{
return str.replace(/\s/g,'%20');
}
3.允许出现多个空格,多个空格用一个20%替换:
用正则表达式找到连续空格进行替换
function replacespace(str)
{
return str.replace(/\s+/g,'%20');
}