题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
1 class Solution { 2 public: 3 void replaceSpace(char *str,int length) { 4 if(length > 0) 5 { 6 int space_count = 0; 7 int i; 8 for (i = 0;i < length;++i) 9 { 10 if(str[i] == ' ') 11 { 12 ++ space_count; 13 } 14 } 15 int left = i ,right = i + space_count * 2; 16 while(left >= 0) 17 { 18 if(str[left] == ' ') 19 { 20 str[right--] = '0'; 21 str[right--] = '2'; 22 str[right--] = '%'; 23 -- left; 24 } 25 else 26 { 27 str[right--] = str[left--]; 28 } 29 } 30 } 31 } 32 };
Java:
Java 中的 String 的 replaceAll 函数是返回替换后的结果,原字符串是不变的。
1 import java.util.*; 2 3 public class Replacement { 4 public String replaceSpace(String iniString, int length) { 5 // write code here 6 String reslut = iniString.replaceAll(" ","%20"); 7 return reslut; 8 } 9 }