空格替換

請編寫一個方法,將字符串中的空格全部替換爲“%20”。假定該字符串有足夠的空間存放新增的字符,並且知道字符串的真實長度(小於等於1000),同時保證字符串由大小寫的英文字母組成。
給定一個string iniString 爲原始的串,以及串的長度 int len, 返回替換後的string。
測試樣例:
“Mr John Smith”,13
返回:”Mr%20John%20Smith”
”Hello World”,12
返回:”Hello%20%20World”

class Replacement {
public:
    string replaceSpace(string iniString, int length) {
        // write code here
        if (length == 0)
            return iniString;
        int lenOfspace = 0;
        for (int i = 0 ; i< length; i++)
            if (iniString[i] == ' ')
                lenOfspace++;
        int len = lenOfspace*2+length;
        string result;
        result.resize(len);

        int j = 0;
        int i = 0;
        while (i<len&&j<length)
        {
            if (iniString[j] == ' ')
            {
                result[i++] = '%';
                result[i++] = '2';
                result[i++] = '0';
            }
            else
                result[i++] = iniString[j];
            j++;
        }
        return result;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章