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 相关文章推荐
使用TextRange获取输入框中光标的位置的代码
Mar 08 Javascript
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
Oct 23 Javascript
jquery json 实例代码
Dec 02 Javascript
jQuery手动点击实现图片轮播特效
Apr 20 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
Apr 12 Javascript
js 动态给元素添加、移除事件的实现方法
Jul 19 Javascript
浅谈pc端rem字体设置的问题
Aug 03 Javascript
全新打包工具parcel零配置vue开发脚手架
Jan 11 Javascript
react中fetch之cors跨域请求的实现方法
Mar 14 Javascript
代码实例ajax实现点击加载更多数据图片
Oct 12 Javascript
微信小程序实现签到功能
Oct 31 Javascript
Vue-cli3多页面配置详解
Mar 22 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生成月历代码
2007/06/14 PHP
linux下php上传文件注意事项
2016/06/11 PHP
简述php环境搭建与配置
2016/12/05 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
2017/12/31 PHP
js中top、clientTop、scrollTop、offsetTop的区别 文字详细说明版
2011/01/08 Javascript
javascript时间函数基础介绍
2013/03/28 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
基于jQuery实现的向下滑动二级菜单效果代码
2015/08/31 Javascript
高效Web开发的10个jQuery代码片段
2016/07/22 Javascript
JavaScript 最佳实践:帮你提升代码质量
2016/12/03 Javascript
原生JS轮播图插件
2017/02/09 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
Bootstrap组合上、下拉框简单实现代码
2017/03/06 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
2017/08/12 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
vue+webpack实现异步组件加载的方法
2018/02/03 Javascript
解决Layui 表单提交数据为空的问题
2018/08/15 Javascript
JS函数内部属性之arguments和this实例解析
2018/10/07 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
vue项目中使用scss的方法步骤
2019/05/16 Javascript
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Python的re模块正则表达式操作
2016/05/25 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
Flask中sqlalchemy模块的实例用法
2020/08/02 Python
canvas之自定义头像功能实现代码示例
2017/09/29 HTML / CSS
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
销售团队激励口号
2014/06/06 职场文书
学生会竞选演讲稿学习部
2014/08/25 职场文书
中学生检讨书1000字
2014/10/28 职场文书
满月酒邀请函
2015/01/30 职场文书
信访工作个人总结
2015/03/03 职场文书
医药公司采购员岗位职责
2015/04/03 职场文书
结婚通知短信大全
2015/04/17 职场文书
Python爬虫数据的分类及json数据使用小结
2021/03/29 Python
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js