• 2、替换空格------------>剑指offer系列


    题目

    请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy。则经过替换之后的字符串为We%20Are%20Happy

    代码

    1.直接用空格将字符串切割成数组,再用20%进行连接。

    function replaceSpace(str)
    {
        return str.split(' ').join('%20');
    }

    2.用正则表达式找到所有空格依次替换

    function replaceSpace(str)
    {
        return str.replace(/s/g,'%20');
    }
    或者
    function replaceSpace(str)
    {
        return str.replace(/[' ']/g,'%20')
    }

    拓展

    允许出现多个空格,多个空格用一个20%替换:

    用正则表达式找到连续空格进行替换

    function replaceSpace(str)
    {
        return str.replace(/s+/g,'%20');
    }

     C++

     

    void ReplaceBlank(char str[], int length)
    {
        if(str == nullptr && length <= 0)
            return;
    
        /*originalLength字符串实际长度*/
        int originalLength = 0;
        int numberOfBlank = 0;
        int i = 0;
        while(str[i] != '')
        {
            ++ originalLength;
    
            if(str[i] == ' ')
                ++ numberOfBlank;
    
            ++ i;
        }
    
        /*newLength 把空格替换成20%之后的长度*/
        int newLength = originalLength + numberOfBlank * 2;
        if(newLength > length)
            return;
    
        int indexOfOriginal = originalLength;
        int indexOfNew = newLength;
        while(indexOfOriginal >= 0 && indexOfNew > indexOfOriginal)
        {
            if(str[indexOfOriginal] == ' ')
            {
                str[indexOfNew --] = '0';
                str[indexOfNew --] = '2';
                str[indexOfNew --] = '%';
            }
            else
            {
                str[indexOfNew --] = str[indexOfOriginal];
            }
    
            -- indexOfOriginal;
        }
    }
  • 相关阅读:
    网址
    asp.net 各种路径查找
    jquery.nicescroll.js 滚动条插件 API
    课程表上一周下一周
    上一周下一周
    使用NPOI导入导出标准Excel
    FTP文件操作 上传文、 下载文件、删除文件 、创建目录
    asp.net断点续传
    11.06第九次作业
    11.20dezuoye
  • 原文地址:https://www.cnblogs.com/QianDingwei/p/10890486.html
Copyright © 2020-2023  润新知