正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

语法

str.replace(regexp|substr, newSubStr|function)

参数

regexp(pattern)

一个RegExp对象或者其字面量。该正则所匹配的内容会被第二个参数的返回值替换掉。

substr(pattern)

一个要被 newSubStr 替换的{{jsxref("String","字符串")}}。其被视为一整个字符串,而不是一个正则表达式。仅仅是第一个匹配会被替换。

newSubStr (replacement)

用于替换掉第一个参数在原字符串中的匹配部分的 {{jsxref("String", "字符串")}}

function (replacement)

一个用来创建新子字符串的函数,该函数的返回值将替换掉第一个参数匹配到的结果。

返回值

一个部分或全部匹配由替代模式所取代的新的字符串。

描述

上面语法的含义是说:一共两个参数,但是两个参数可以分别传输不同的类型的值。

可能你看上面BB半天了也没看明白,没关系,我们直接来上代码:

用法

1. 基本用法

var x = "abcda";

//两个参数都是字符串

var y = x.replace('a','x');//'xbcda'

1. 进阶用法

var x = "abcda";

//前面参数使用正则,后面使用字符串

var y = x.replace(/a/g,'x');//'xbcdx'

1. 复杂用法

var x = 'abcda';

//前面参数使用正则,后面使用字符串

var y = x.replace(/a/g,function(match){

return match.toUpperCase();

});//'AbcdA'

应用场景

这里只讲复杂用法中的应用场景实际使用,比如有个需求:你需要html文件中的标签之间的所有标签中的字符a替换为字符b。当然如果是正则大神的话就可以跳过这里了,主要以下方式比较容易理解,更适合正则新手。

解决方法:

var allData = "

"+'\r\n'+

"

aaa

"+'\r\n'+

"

aaa

"+'\r\n'+

"";

allData = allData.replace(/\([\s\S]*?)\/g, function(match) {

return match.replace(/\

(.*?)\/g, function(match1) {

return match1.replace(/a/g, "b")

})

});

PS:在进行全局的搜索替换时,正则表达式需包含 g 标志。

linux对字符串进行替换,使用正则表达式替换字符串的方法(replace方法)相关推荐

  1. php正则表达式替换,PHP正则表达式替换函数preg_replace

    preg_replace正则表达式替换函数对于我来说,现在非常喜欢它.不仅能准确.快速的处理字符串,还能让我从新审视正则表达式的重要性.正则表达式语言对于我来说,就像人类听不懂鸟语一样,想懂它却那么难 ...

  2. c 正则表达式替换html,正则表达式替换html元素属性的方法

    正则表达式替换任意html元素任意属性,或增加任意属性. /** * 替换html中任意tag内任意attr值 * @param src_str * @param tag * @param attr ...

  3. html 正则表达式替换标签,正则表达式替换 html 标签

    /** * 此方法描述的是:字符串的替换 * @param string需要替换的字符串 * @param oldString被替换的字符串 * @param newString新字符串 * @aut ...

  4. java正则表达式替换指定字符串_笔记_正则表达式替换字符串中特定范围内的字符。...

    功能:从字符串中找到所有<>之间的单引号,转换成双引号. 如: 转换成: 代码: package test_java; import java.util.regex.Matcher; im ...

  5. 尚硅谷JS笔记-数组的剩余方法、函数的方法 、arguments 、Date、Math、包装类、字符串的相关方法、正则表达式、字符串和正则相关的方法的总结及归纳

    目录 一.数组的剩余方法 二.函数的方法 三.arguments 四.Date 五.Math 六.包装类 七.字符串的相关方法 八.正则表达式 九.正则表达式 十.字符串和正则相关的方法 一.数组的剩 ...

  6. python使用正则表达式实现字符串替换

    python的字符串提供了replace方法,可以将子串替换成其他字符串,例如下面的代码 name= 'flask_script' name = name.replace('_', '-') prin ...

  7. php正则表达式替换字符,php正则表达式如何替换字符

    php正则表达式字符串替换字符的方法:首先创建一个PHP示例文件:然后获取需要被替换的字符串:接着使用正则表达式匹配并替换相关字符:最后用echo输出替换后的字符串即可. php正则表达式替换匹配的字 ...

  8. 用正则表达式替换html标签,在SQL中用正则表达式替换html标签

    由于数据库的一个表字段中多包含html标签,现在需要修改数据库的字段把html标签都替换掉.当然我可以通过写一个程序去修改,那毕竟有点麻烦.直接在查询分析器中执行,但是MS SQL Server并没有 ...

  9. php正则表达式替换,php正则表达式如何替换字符

    php正则表达式字符串替换字符的方法:首先创建一个PHP示例文件:然后获取需要被替换的字符串:接着使用正则表达式匹配并替换相关字符:最后用echo输出替换后的字符串即可. php正则表达式替换匹配的字 ...

最新文章

  1. Flutter 28: 图解 ListView/GridView 混用时滑动冲突小尝试
  2. Linux上的WebSphere MQ开发快速入门
  3. python strip() 函数探究
  4. 设置Windbg符号文件路径
  5. selenium java 参数化_Java+selenium 自动化测试【03】-- 数据驱动之参数化
  6. 解决a different object with the same identifier value was already associated with the session错误...
  7. html css js编程顺序,html css js先学哪个呢?
  8. python调用github_Python调用GithubAPI并进行初步的数据分析
  9. mysql执行一条sql语句的完整过程,sql语句在mysql中的执行过程
  10. 专栏推荐丨Oracle Database 21c 专栏
  11. Java基于Redis的分布式锁
  12. ftp主动和被动模式_ftp协议,深入理解ftp协议只需3步
  13. 第一章 项目管理引论
  14. 教你一秒理解setInterval与setTimeout的使用和区别
  15. 目标检测之2015iccv---objdetection 专题论文
  16. 老米之家 抢注域名应该怎么抢?抢注域名的价值如何去衡量
  17. 2019java面试(二)
  18. html5中正则表达式怎么加,HTML5中的字母正则表达式(Alphabetic Regex in HTML5)
  19. linux安装盘fat 还是 ntfs,NTFS与FAT区别差异
  20. UCWEB手机浏览器(可以和opera mini 媲美的手机浏览器)

热门文章

  1. mysql系统分析实战分享
  2. 接口(interfaces)的定义和实现
  3. 第五十一篇 并发编程——多进程
  4. 盘点 GitHub 那些标星超过 20 K 的 Golang 优质开源项目
  5. DynaSLAM-9 DynaSLAM中双目运行流程(Ⅲ):图像处理
  6. 微信公众号简单开发(2)验证服务器地址
  7. git stash 压栈
  8. 树莓派 python spi_如何理解 Python_Spidev 的 spi.xfer2 方法? (时序图 位操作)
  9. Ubuntu 16.04安装编译MRPT 1.5.7
  10. 性能分析之性能建模简述