js正则replace

reg = /{{#account}}(.*){{\/account}}/g

bao.replace(reg, function(bao,baobao){
  return baobao;
})
"Your account is {{a}} "
bao = "{{#account}}Your account is {{a}} {{/account}}"

replace第二个参数可以是字符串也可以是function,

若为字符串则替换第一个参数匹配的字符串;

若为function,则function中第一个参数表示replace第一个参数的完全匹配,function的第二个参数表示replace第一个参数的不完全匹配(即取得其小括号中的字符串)

时间: 2024-10-03 23:28:48

js正则replace的相关文章

js 正则练习之语法高亮

原文:js 正则练习之语法高亮 学了几天正则,差不多该总结整理写成果了,之前就想写语法高亮匹配来着,不过水平不够,看着例子都不理解.今天就分析下 次碳酸钴 和 Barret Lee 语法高亮实现. 先说 Barret Lee 的这篇 <玩转正则之highlight高亮>之前看的时候只觉的神奇,特别是下面那个一步一步分开匹配的例子,更是霸气测漏,不过作者也说了,分开只是为了演示方便,可以很直观的看到这一步匹配了什么,不然一步到位匹配完成,你都不知道发生了什么就处理完毕了.来看下他的正则 (/^\

python第九十五天--js正则

定义正则表达式 /.../ 用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m 表示多行匹配 JS正则匹配时本身就是支持多行,此处多行匹配只是影响正则表达式^和$,m模式也会使用^$来匹配换行的内容) var pattern = /^Java\w*/gm; var text = "JavaScript is more fun than \nJavaEE or JavaBeans!"; result = pattern.exec(text) re

运用正则+replace+substring将一段英语的字母大写

复习下js基础并运用正则+replace+substring将一段英语的字母大写 <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>首字母大写</title> </head> <body> <div class="dv"></div> </body></html&

js拾遗: replace 替换参数

先来看一个简单的例子吧. var str = "123X321".replace("X", "$'"); 替换后的 str 是什么呢?是 "123$'321" ...吗??如果你的浏览器是 IE6-8 的话,确实是这个结果,可是那只是变态IE的结果.标准浏览器下会是什么呢? var str = "123X321".replace("X", "$'"); console

记录一下JS正则的坑

JS正则的单行模式有点问题 总之 . 符号匹配换行符号会有问题 暂时的解决方案是 html = html.replace(/[\r\n]/g,""); 附加一个 html = html.replace(/\s{2,}/g," "); 清理多余空格(注意 可能会误伤正文内容 最好对标签内容进行局部处理)

常用JS正则匹配函数

//校验用户名:只能输入1-30个字母 function isTrueName(s) { var patrn=/^[a-zA-Z]{1,30}$/; if (!patrn.exec(s)) return false return true } //校验密码:只能输入6-20个字母.数字.下划线 function isPasswd(s) { var patrn=/^(/w){6,20}$/; if (!patrn.exec(s)) return false return true } //校验普通

js正则学习

一直对正则很纠结也很畏惧,以前感觉花时间理解一个个奇奇怪怪的符号,还不如直接百度谷歌之. 但知其然不知其所以然也是种痛苦,所以花了两天稍微学了一下,虽然没学很深入彻底,但也比之前进步不少,特此笔记. js正则 g:表示全局,匹配全部i:表示不区分大小写m:表示匹配多行(匹配换行两端的潜在匹配) RegExp实例属性: global:是否设置了g ignoreCase:是否设置了i  lastIndex:表示下一次exec开始搜索下个匹配项的字符位置  multiline:表示是否设置了m  so

js正则实现从一段复杂html代码字符串中匹配并处理特定信息

js正则实现从一段复杂html代码字符串中匹配并处理特定信息 问题: 现在要从一个复杂的html代码字符串(包含各种html标签,数字.中文等信息)中找到某一段特别的信息(被一对“|”包裹着),并对他进行加粗.加下滑线处理. 解决思路: 1.用正则匹配“|”出现的次数,处理刚好出现2次的(html字符串中一般不会含有这个字符) 2.使用正则分组,获取“|”之间的内容,并进行替换(添加样式) 代码: function specialDeal(){ htmlStr = htmlStr.replace

js正则相关

js正则相关 1.检测是否是数字,包括整数,小数 var str = prompt("请输入一个数字"); var reg = /^\-?(0|[1-9]\d*)(\.\d+)?$/ ; if(reg.test(num)){ alert("正确"); }else( alert("错误")); 2 .检测是否是本地电话. var tel = prompt("请输入本地电话"); var reg = /^\d{3,4}\-\d{8