替换_替换字符串 - CSDN
精华内容
参与话题
  • 使用 replace 将 / 替换成 -

    千次阅读 2019-05-08 11:30:08
    "2019/5/8".replace(/(\/)/g,'-'); "2019-5-8

    "2019/5/8".replace(/(\/)/g,'-');     
    "2019-5-8"

    展开全文
  • vi/vim 文件查找与替换

    万次阅读 多人点赞 2019-02-27 16:44:23
    vim有着强大的替换和查找功能,若能进行熟练的运用,可以让工作效率得到一个很大程度的提高. 替换 语法:[addr]s/源字符串/目的字符串/[option] [addr]表示检索范围,如: "1,n":表示从第1行到n行 "%&...

    vim有着强大的替换和查找功能,若能进行熟练的运用,可以让工作效率得到一个很大程度的提高.

    替换

    语法:[addr]s/源字符串/目的字符串/[option]

    [addr]表示检索范围,如:

    "1,n":表示从第1行到n行
    "%":表示整个文件,同"1,$"
    ".,$":表示从当前行到文件尾

    [addr]省略时表示当前行

    s:表示替换操作,其为substitute的缩写

    [option] : 表示操作类型,如:

    g:globe,表示全局替换

    c:confirm,表示进行确认

    p:表示替代结果逐行显示(Ctrl + L恢复屏幕)

    i:ignore,不区分大小写

    [option]省略时仅对每行第一个匹配串进行替换

    如果在源字符串和目的字符串中出现特殊字符,如'/','<','>',','等需要前面加反斜杠\进行转义

     

    常用命令示例:

    #将当前行第一个a替换为b

    :s/a/b/

     

    #将当前行的所有a替换为b

    :s/a/b/g

     

    #将每行第一个a替换为b

    :%s/a/b

     

    #将整个文件的所有a替换为b

    :%s/a/b/g

     

    #将1至3行的第一个a替换为b

    :1,3s/a/b/

     

    #将1至3行的所有a替换为b

    :1,3s/a/b/g

     

    上面是一些常用的替换,但是我们日常碰到的问题不止这么简单,这就要涉及到一些较为高级的替换操作,会涉及到转义,正则表达式相关的知识,下面是一些例子:

    #使用#作为分隔符,此时中间出现的/不会作为分隔符,如:将当前行的字符串"a/"替换为"b/"

    :s#a/#b/#

     

    #找到包含字母a的行并删除

    :g/a/d

     

    #删除所有空行
    :g/^$/d

     

     #多个空格替换为一个空格

    :s/ \+/ /g

     

    #在正则表达式中使用\(和\)符号括起正则表达式,即可在后面使用\1,\2等变量来访问\(和\)中的内容,如下
    将data1 data2修改为data2 data1
    :s/\(\w\+\)\s\+\(\w\+\)/\2\t\1


    后续继续补充!

    展开全文
  • 字符串替换

    千次阅读 2018-10-02 20:45:02
    请你实现一个简单的字符串替换函数。原串中需要替换的占位符为"%s",请按照参数列表的顺序一一替换占位符。若参数列表的字符数大于占位符个数。则将剩下的参数字符添加到字符串的结尾。 给定一个字符串A,...

    请你实现一个简单的字符串替换函数。原串中需要替换的占位符为"%s",请按照参数列表的顺序一一替换占位符。若参数列表的字符数大于占位符个数。则将剩下的参数字符添加到字符串的结尾。

    给定一个字符串A,同时给定它的长度n及参数字符数组arg,请返回替换后的字符串。保证参数个数大于等于占位符个数。保证原串由大小写英文字母组成,同时长度小于等于500。

    测试样例:"A%sC%sE",7,['B','D','F']

    返回:"ABCDEF"

     

    方法:特殊函数替换法

     

    解析:定义pos在原字符串A中查找“%s”子串,从而获得“%s”的初始位置。然后替换“%s”,即定义一个下标i,并初始化为0,再定义一个字符串接收arg中替换的字符,然后遍历原字符串A,当其元素为“%s”时,将arg中元素赋值给字符串s,再利用replace函数将原字符串中的“%s”替换成s中的元素。最后判断参数列表的字符数是否大于占位符个数,如果是则将剩下的参数字符添加到字符串的末尾。由此得到替换后的字符串。

     

    代码:

    //string::npos参数:pos 是一个常数,用来表示不存在的位置,类型一般是std::container_type::size_type 许多容器都提供这个东西。取值由实现决定,一般是-1,这样做,就不会存在移植的问题了。

     

    //find函数的返回值是整数,假如字符串存在包含关系,其返回值必定不等于npos,但如果字符串不存在包含关系,那么返回值就一定是npos。所以不难想到用if判断语句来实现!

    string formatString(string A, int n, vector<char> arg, int m)
    
    {
    
        int pos = A.find("%s");//在A中查找“%s"串
    
        int i = 0;
    
        string s;
    
        while(pos != string::npos)
    
           {
    
            s = arg[i++];
    
            A.replace(pos,2,s,0,1);//替换
    
            pos = A.find("%s");
    
        }
    
            
    
        while(i < m)
    
           {
    
            A += arg[i++];
    
        }
    
        return A;
    
    }
    
    

    方法二:特殊函数删除法

     

    解析:先定义一个变量k,初始化为0,表示arg替换时的下标,然后遍历原字符串A,替换“%s”,即判断元素是否为‘%’并且下个元素为‘s’,如果是,arg中的某个元素替换当前元素,再用erase函数删除后一个元素;最后判断变量k是否不等于arg的长度,如果是,则将剩下的字符使用循环语句将其放入在字符串A中;如此可以得到替换后的字符串。

     

    代码:

    //erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符
    
    //erase(position);删除position处的一个字符(position是个string类型的迭代器)
    
    //erase(first,last);删除从first到last之间的字符(first和last都是迭代器)
    
    string formatString(string A, int n, vector<char> arg, int m)
    
    {
    
        int k=0;
    
           for(int i=0;i<n;i++)
    
           {
    
                  if(A[i]=='%'&&A[i+1]=='s')
    
                  {
    
                         A[i]=arg[k];
    
                         k++;
    
                         A=A.erase(i+1,1);
    
                  }
    
           }
    
           if(k!=m)
    
           {
    
                  for(int j=k;j<m;j++)
    
                         A=A+arg[j];
    
           }
    
           return A;
    
    }

     

    方法三:特殊函数复制法

     

    解析:先遍历原字符串A,将其‘%s’替换,即定义一个变量找到‘%’的位置,然后用substr复制函数将‘%’位置前的字符复制到新的字符res中,再将‘%s’替换的arg中的元素写入新地字符串res中,此时用substr函数将A的字符串变为‘%s’之后的部分,如此反复替换完‘%s’;接着将新的字符串res与A相加得到字符串res;最后用遍历的方式将arg中剩余的元素写入res末尾,由此得到最终所求解的字符串。

     

    代码:

    string formatString(string A, int n, vector<char> arg, int m)
    
    {
    
        string res;
    
        int count = 0;
    
        while(A.find('%') != -1)
    
           {
    
            int index = A.find('%');
    
            string a = A.substr(0,index);
    
            res = res + a;
    
            res = res + arg[count++];
    
            A = A.substr(index+2,A.size());
    
        }
    
        res = res + A;
    
        for(int i = count; i < m; i++)
    
           {
    
            res = res + arg[i];
    
        }  
    
        return res;
    
    }

     

    展开全文
  • vim 中的替换

    千次阅读 2019-06-19 13:51:59
    查找与替换 :s(substitute)命令用来查找和替换字符串。语法如下: :{作用范围}s/{目标}/{替换}/{替换标志} 例如:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(g)。 作用范围 作用...

     

    查找与替换

    :s(substitute)命令用来查找和替换字符串。语法如下:

    :{作用范围}s/{目标}/{替换}/{替换标志}
    

    例如:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(g)。

    作用范围

    作用范围分为当前行、全文、选区等等。

    当前行:

    :s/foo/bar/g
    

    全文:

    :%s/foo/bar/g
    

    选区,在Visual模式下选择区域后输入:,Vim即可自动补全为 :'<,'>

    :'<,'>s/foo/bar/g
    

    2-11行:

    :5,12s/foo/bar/g
    

    当前行.与接下来两行+2

    :.,+2s/foo/bar/g
    

    替换标志

    上文中命令结尾的g即是替换标志之一,表示全局global替换(即替换目标的所有出现)。 还有很多其他有用的替换标志:

    空替换标志表示只替换从光标位置开始,目标的第一次出现:

    :%s/foo/bar
    

    i表示大小写不敏感查找,I表示大小写敏感:

    :%s/foo/bar/i
    # 等效于模式中的\c(不敏感)或\C(敏感)
    :%s/foo\c/bar
    

    c表示需要确认,例如全局查找"foo"替换为"bar"并且需要确认:

     

     

     

     

     

    Reference:

    https://harttle.land/2016/08/08/vim-search-in-file.html

    展开全文
  • idea 查找与替换

    万次阅读 多人点赞 2019-06-13 23:17:43
    查找当前文件内容:ctrl+F 如上图片 查找全局文件:ctrl+shift+F 或double shift(按两下)或ctrl+shift+N 替换当前文件内容 :ctrl+R 如上图片
  • 字符串中的 ↵ 回车符替换

    千次阅读 2020-04-23 14:46:39
    对于录入的一串字符串,在文本中录入时,进行回车换行。录入的结果会如下。包含回车符↵ 啦啦啦啦↵→妈妈们渐渐承担越来越 ...那么如何展示成换行。... 经发现,字符串中的 ↵ 替换的时候,会被替换为 空格。...
  • 全文搜索和替换

    2008-05-01 04:43:00
    <!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"
  • vim批量替换

    千次阅读 2019-05-06 13:13:39
    当前行进行替换:s/XXX/YYY/gXXX是需要替换的字符串,YYY是替换后的字符串。 全局替换:% s/XXX/YYY/g. 对指定部分进行替换用V进入visual模式,再进行:s/XXX/YYY/g. 或指定行范围替换::100, 102s/XXX/YYY/g. 替换...
  • SQL中的替换函数replace()使用

    万次阅读 2018-06-06 11:30:01
    语法REPLACE ( string_expression , string_pattern , string_replacement )参数string_expression 要搜索的字符串表达式。string_expression 可以是字符或二进制数据类型。string_pattern 是要查找的子字符串。...
  • idea替换的快捷键

    万次阅读 2019-05-29 11:40:32
    idea替换快捷键 解决方法: ctrl + r: 当前文件内容替换,指的是在当前打开的文件中替换匹配的字符,只操作一个文件。 如果想在选定的目录下或者类包下查找替换:...
  • Mac:VSCode 批量替换快捷键

    万次阅读 2018-09-28 09:11:08
    command+F2
  • Android studio替换全局
  • 替换List中的某个元素

    万次阅读 多人点赞 2016-12-30 14:19:26
    需求:替换List中某个index的元素 问题:不知道具体的index  但是知道被替换的元素值 代码: String oldId=mDatas.get(selPos).attributeValueId; String newId=mDatas.get(layoutPosition)....
  • PyCharm中批量查找及替换

    万次阅读 2018-07-17 10:53:09
    选中需要操作的字符 ...Ctrl + R 替换 Ctrl + Shift + F 全局查找 Ctrl + Shift + R 全局替换 源自: PyCharm中批量查找及替换 - Ella_Wu - 博客园 http://www.cnblogs.com/wuaihua/p/7597017.html...
  • 光标定位于替换框,按住Alt打数字小键盘上的0010(放手后看不到任何变化,但实际有换行符),全部替换替换后,在被替换内容的位置自动换行。
  • go 字符串替换

    万次阅读 2018-02-05 10:38:30
    引入strings包 import "strings" ...在s字符串中,把old字符串替换为new字符串,n表示替换的次数,小于0表示全部替换 //替换两次 fmt.Println(strings.Replace("oink oink oink", "k", "ky
  • 如何使用fiddler工具替换网站文件

    万次阅读 2019-02-19 15:07:00
    1 , 打开fiddler , 将要替换的网站打开 2 , 在fiddler中找到要替换的文件 3 , 点击右边的AutoResponder 4 , 点击Add Rule按钮 点击之后下面会多一条记录 5 , 将本地文件路径写入(写入路径后记得点...
  • 使用jquery的replace时,发现只默认替换到第一个匹配数据。 string str =“12333” 1、替换第一个: string end =str.replace(3,"2") 结果:12233 2、替换全部匹配内容: string end =str.replace(/...
  • vim中空格替换为换行及删除换行

    万次阅读 2016-06-08 09:20:24
    一、把空格替换为换行:% s/ /\r/g二、把空行删除:g/^$/d
  • jquery 替换原来的html内容

    万次阅读 2016-03-07 13:46:43
    使用括号内的内容替换所选择的内容。 $("#div").replaceWith("div2"); 使用方法如上,将ID为div的元素替换为ID为div2的DIV元素。 2.replaceAll() 将选择的内容替换到括号内的选择器。 $("替换后的内容")....
1 2 3 4 5 ... 20
收藏数 2,000,580
精华内容 800,232
关键字:

替换