JS使用replace()方法和正则表达式进行字符串的搜索与替换实例


Posted in Javascript onApril 10, 2014

1、JS字符串的替换及replace()方法的使用

replace(regexp,replacement)方法有两个参数,第一参数可以是一个纯文本字符串或是一个RegExp对象,具体请看RegExp对象的使用;第二个参数可是一个字符串也可以是一个函数。

以下是JS字符串替换的举例:

例1:

var str="Hello world!";
document.write(str.replace(/world/, "phper"));

例2:
var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var info="Lili,14,China";
var rep=info.replace(reg, "She is $1, $2 years old, come from $3");
alert(rep);

例3:
var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var info="Lili,14,China";
var name, age, from;
function prase_info(m,p1,p2,p3) { // 也可使用非显式参数,使用arguments获取
 name = p1;
 age = p2;
 from = p3;
 return "She is "+p1+", "+p2+" years old, come from "+p3;
}
var rep=info.replace(reg, prase_info);
alert(rep);
aler(name);

2、RegExp对象的使用

JavaScript提供了一个RegExp对象来完成有关正则表达式的操作和功能,每一条正则表达式模式对应一个RegExp实例。有两种方式可以创建RegExp对象的实例。

使用RegExp的显式构造函数,语法为:new RegExp("pattern"[,"flags"]);使用RegExp的隐式构造函数,采用纯文本格式:/pattern/[flags]。例4中两条语句是等价的。

例4:

var re1 = new RegExp("\\d{5}");
var re2 = /\d{5}/;

 3、字符串的搜索及exec()方法的使用

 exec()方法返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

例5:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var m=reg.exec("Lili,14,China");
var s="";
for (i = 0; i < m.length; i++) {
      s = s + m[i] + "\n";
}
alert(s);

4、test()方法的使用

RegExpObject.test(string)

如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false。

例6:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var m=reg.test("Lili,14,China");
alert(RegExp.$1); 
alert(RegExp.$2);
alert(RegExp.$3);
Javascript 相关文章推荐
可以用来调试JavaScript错误的解决方案
Aug 07 Javascript
JS中的数组的sort方法使用示例
Jan 22 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
Apr 23 Javascript
javascript格式化日期时间方法汇总
Jun 19 Javascript
js获取及修改网页背景色和字体色的方法
Dec 29 Javascript
浅谈JavaScript函数的四种存在形态
Jun 08 Javascript
完美解决js传递参数中加号和&amp;号自动改变的方法
Oct 11 Javascript
Bootstrap CSS组件之大屏幕展播
Dec 17 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
Dec 28 Javascript
Vue动画事件详解及过渡动画实例
Feb 09 Javascript
在node中使用jwt签发与验证token的方法
Apr 03 Javascript
微信内置浏览器图片查看器的代码实例
Oct 08 Javascript
javascript的propertyIsEnumerable()方法使用介绍
Apr 09 #Javascript
常见的原始JS选择器使用方法总结
Apr 09 #Javascript
jquery查找父元素、子元素(个人经验总结)
Apr 09 #Javascript
js控制iframe的高度/宽度让其自适应内容
Apr 09 #Javascript
JS、DOM和JQuery之间的关系示例分析
Apr 09 #Javascript
jQuery遍历Table应用示例
Apr 09 #Javascript
通过url查找a元素并点击
Apr 09 #Javascript
You might like
php+dbfile开发小型留言本
2006/10/09 PHP
谈谈PHP语法(5)
2006/10/09 PHP
PHP Trait代码复用类与多继承实现方法详解
2019/06/17 PHP
php 策略模式原理与应用深入理解
2019/09/25 PHP
jQuery焦点图切换特效插件封装实例
2013/08/18 Javascript
window.open 以post方式传递参数示例代码
2014/02/27 Javascript
javascript变量声明实例分析
2015/04/25 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
jquery简单插件制作(fn.extend)完整实例
2016/05/24 Javascript
动态更新highcharts数据的实现方法
2016/05/28 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
javascript计算渐变颜色的实例
2017/09/22 Javascript
vue.js与element-ui实现菜单树形结构的解决方法
2018/04/21 Javascript
详解webpack自定义loader初探
2018/08/29 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
如何为你的JS项目添加智能提示与类型检查详解
2019/03/12 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
python生成指定尺寸缩略图的示例
2014/05/07 Python
Python中__new__与__init__方法的区别详解
2015/05/04 Python
Python调用SQLPlus来操作和解析Oracle数据库的方法
2016/04/09 Python
python通过socket实现多个连接并实现ssh功能详解
2017/11/08 Python
TensorFlow实现简单的CNN的方法
2019/07/18 Python
python numpy 矩阵堆叠实例
2020/01/17 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
python如何实时获取tcpdump输出
2020/09/16 Python
移动web模拟客户端实现多方框输入密码效果【附代码】
2016/03/25 HTML / CSS
瑞典时尚耳机品牌:Urbanears
2017/07/26 全球购物
印度领先的眼镜电子商务网站:Lenskart
2019/12/16 全球购物
Under Armour安德玛意大利官网:美国高端运动科技品牌
2020/01/16 全球购物
环境科学专业个人求职信
2013/09/26 职场文书
幼儿园开学家长寄语
2014/01/19 职场文书
五一口号
2014/06/19 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
2015年幼儿园大班工作总结
2015/04/25 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
2016年社区综治宣传月活动总结
2016/03/16 职场文书