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对象的property属性详解
Apr 01 Javascript
跟我学习javascript的arguments对象
Nov 16 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
Aug 01 Javascript
轻松搞定js表单验证
Oct 13 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
Nov 29 Javascript
利用Chrome DevTools直接调试Node.js和JavaScript的方法详解(并行)
Feb 16 Javascript
Vue中&quot;This dependency was not found&quot;问题的解决方法
Jun 19 Javascript
微信小程序显示倒计时功能示例【测试可用】
Dec 03 Javascript
layui内置模块layim发送图片添加加载动画的方法
Sep 23 Javascript
通过JS判断网页是否为手机打开
Oct 28 Javascript
如何实现小程序与小程序之间的跳转
Nov 04 Javascript
Vue Element plus使用方法梳理
Dec 24 Vue.js
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与C#的值类型指向区别的详解
2013/05/21 PHP
php中mt_rand()随机数函数用法
2014/11/24 PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
2016/11/15 PHP
php 运算符与表达式详细介绍
2016/11/30 PHP
微信小程序 消息推送php服务器验证实例详解
2017/03/30 PHP
php学习笔记之字符串常见操作总结
2019/07/16 PHP
Javascript面向对象编程
2012/03/18 Javascript
js读取注册表的键值示例
2013/09/25 Javascript
JavaScript动态操作表格实例(添加,删除行,列及单元格)
2013/11/25 Javascript
jQuery实现文本展开收缩特效
2015/06/03 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
2017/04/07 Javascript
JS实现unicode和UTF-8之间的互相转换互转
2017/07/05 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
2018/04/14 Javascript
详解Vue iview IE浏览器不兼容报错(Iview Bable polyfill)
2019/01/07 Javascript
通过vue手动封装on、emit、off的代码详解
2019/05/29 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
Vue使用Element实现增删改查+打包的步骤
2020/11/25 Vue.js
[40:27]完美世界DOTA2联赛PWL S3 PXG vs GXR 第一场 12.19
2020/12/24 DOTA
python通过imaplib模块读取gmail里邮件的方法
2015/05/08 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
python实现自主查询实时天气
2018/06/22 Python
python用opencv完成图像分割并进行目标物的提取
2020/05/25 Python
python db类用法说明
2020/07/07 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
英国太阳镜品牌:Taylor Morris Eyewear
2018/04/18 全球购物
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
程序员岗位职责
2013/11/11 职场文书
小学教师师德承诺书
2014/05/23 职场文书
四风查摆问题自查报告
2014/10/10 职场文书
村干部群众路线整改措施思想汇报
2014/10/12 职场文书
新郎父母婚礼答谢词
2015/09/29 职场文书
导游词之苏州阳澄湖
2019/11/15 职场文书
如何在CocosCreator里画个炫酷的雷达图
2021/04/16 Javascript
MySQL系列之四 SQL语法
2021/07/02 MySQL
springboot如何接收application/x-www-form-urlencoded类型的请求
2021/11/02 Java/Android