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实现的支持lrc歌词的播放器
May 17 Javascript
JS中的public和private对象,即static修饰符
Jan 18 Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
Apr 08 Javascript
JS按字节截取字符长度实例
Nov 20 Javascript
JavaScript将页面表格导出为Excel的具体实现
Dec 27 Javascript
jQuery Migrate 1.1.0 Released 注意事项
Jun 14 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
Mar 03 Javascript
详解Vue快速零配置的打包工具——parcel
Jan 16 Javascript
[原创]jQuery实现合并/追加数组并去除重复项的方法
Apr 11 jQuery
elementui之el-tebs浏览器卡死的问题和使用报错未注册问题
Jul 06 Javascript
layui实现把数据表格时间戳转换为时间格式的例子
Sep 12 Javascript
让Vue响应Map或Set的变化操作
Nov 11 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 无法加载mysql的module的时候的配置的解决方案引发的思考
2012/01/27 PHP
2款PHP无限级分类实例代码
2015/11/11 PHP
php中文字符串截取多种方法汇总
2016/10/06 PHP
php数组指针操作详解
2017/02/14 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
2017/06/17 PHP
PHP回调函数简单用法示例
2019/05/08 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
Javascript 获取滚动条位置等信息的函数
2009/09/08 Javascript
JS获取键盘上任意按键的值(实例代码)
2013/11/12 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
jQuery异步加载数据并添加事件示例
2014/08/24 Javascript
AngularJS实现表单验证
2015/01/28 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
2015/05/06 Javascript
jQuery动画显示和隐藏效果实例演示(附demo源码下载)
2015/12/31 Javascript
requireJS模块化实现返回顶部功能的方法详解
2017/10/16 Javascript
Vue项目使用CDN优化首屏加载问题
2018/04/01 Javascript
详解vue中axios的使用与封装
2019/03/20 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
2019/04/04 Javascript
微信小程序Page中data数据操作和函数调用方法
2019/05/08 Javascript
使用python编写android截屏脚本双击运行即可
2014/07/21 Python
Python中异常重试的解决方案详解
2017/05/05 Python
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
利用标准库fractions模块让Python支持分数类型的方法详解
2017/08/11 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
python实现flappy bird游戏
2018/12/24 Python
Html5百叶窗效果的示例代码
2017/12/11 HTML / CSS
Wallis官网:英国女装零售商
2020/01/21 全球购物
德国的大型美妆个护电商:Flaconi
2020/06/26 全球购物
这段代码难道不该打印出56吗
2013/02/27 面试题
研发工程师的岗位职责
2013/11/18 职场文书
12.4法制宣传日活动总结
2014/08/26 职场文书
大学生个人年度总结范文
2015/02/15 职场文书
鲁滨孙漂流记读书笔记
2015/06/30 职场文书
2016年小学六一儿童节活动总结
2016/04/06 职场文书
学习计划是什么
2019/04/30 职场文书
有关信念的名言语录集锦
2019/12/06 职场文书