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 相关文章推荐
js实现简单模态窗口,背景灰显
Nov 14 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
Jan 08 Javascript
jQuery.query.js 取参数的两点问题分析
Aug 06 Javascript
jQuery 仿百度输入标签插件附效果图
Jul 04 Javascript
jQuery scrollFix滚动定位插件
Apr 01 Javascript
JavaScript图片轮播代码分享
Jul 31 Javascript
基于JS代码实现导航条弹出式悬浮菜单
Jun 17 Javascript
jquery根据一个值来选中select下的option实例代码
Aug 29 Javascript
JavaScript仿百度图片浏览效果
Nov 23 Javascript
vue基于viewer实现的图片查看器功能
Apr 12 Javascript
vue 解决computed修改data数据的问题
Nov 06 Javascript
js实现抽奖的两种方法
Mar 19 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比较多维数组中值的大小排序实现代码
2012/09/08 PHP
php 强制下载文件实现代码
2013/10/28 PHP
js实现幻灯片效果(基于jquery插件)
2013/11/05 Javascript
深入理解JavaScript高级之词法作用域和作用域链
2013/12/10 Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
2016/05/18 Javascript
AngularJS中run方法的巧妙运用
2017/01/04 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
深入浅析javascript继承体系
2017/10/23 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
使用vue-router与v-if实现tab切换遇到的问题及解决方法
2018/09/07 Javascript
在vue中v-bind使用三目运算符绑定class的实例
2018/09/29 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
在nodejs中创建child process的方法
2021/01/26 NodeJs
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
[05:37]DOTA2-DPC中国联赛 正赛 Elephant vs iG 选手采访
2021/03/11 DOTA
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
Python 3.x 连接数据库示例(pymysql 方式)
2017/01/19 Python
Python设计实现的计算器功能完整实例
2017/08/18 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
python 判断网络连通的实现方法
2018/04/22 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
浅谈Python的list中的选取范围
2018/11/12 Python
Python输出\u编码将其转换成中文的实例
2018/12/15 Python
python变量赋值方法(可变与不可变)
2019/01/12 Python
使用Puppeteer爬取微信文章的实现
2020/02/11 Python
python使用pandas抽样训练数据中某个类别实例
2020/02/28 Python
Python 改变数组类型为uint8的实现
2020/04/09 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
Python爬取微信小程序通用方法代码实例详解
2020/09/29 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
2020/10/09 Python
HTML5中微数据概述及在搜索引擎中的使用举例
2013/02/07 HTML / CSS
毕业生求职简历中的自我评价
2013/10/18 职场文书
毕业生怎样写好自荐信
2013/11/11 职场文书
平面设计师的工作职责
2013/11/21 职场文书
python实现批量提取指定文件夹下同类型文件
2021/04/05 Python
OpenCV实现普通阈值
2021/11/17 Java/Android