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 相关文章推荐
jQuery 选择器、DOM操作、事件、动画
Nov 25 Javascript
Ajax执行顺序流程及回调问题分析
Dec 10 Javascript
给jQuery方法添加回调函数一款插件的应用
Jan 21 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
Jul 01 Javascript
JS中判断null、undefined与NaN的方法
Mar 24 Javascript
JavaScript实现获取dom中class的方法
Feb 09 Javascript
原生js实现图片轮播特效
Dec 18 Javascript
遍历js中对象的属性和值的实例
Nov 21 Javascript
详解js的延迟对象、跨域、模板引擎、弹出层、AJAX【附实例下载】
Dec 19 Javascript
原生Javascript插件开发实践
Jan 18 Javascript
react 原生实现头像滚动播放的示例
Apr 21 Javascript
TS 类型兼容教程示例详解
Sep 23 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 empty函数判断mysql表单是否为空
2010/04/12 PHP
PHPCMS忘记后台密码的解决办法
2016/10/30 PHP
Laravel推荐使用的十个辅助函数
2019/05/10 PHP
laravel5.5安装jwt-auth 生成token令牌的示例
2019/10/24 PHP
JS焦点图切换,上下翻转
2011/05/12 Javascript
JavaScript 32位整型无符号操作示例
2013/12/08 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
node.js中的console.warn方法使用说明
2014/12/09 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
浅谈javascript的闭包
2017/01/23 Javascript
Vue 样式绑定的实现方法
2019/01/15 Javascript
详解JavaScript匿名函数和闭包
2020/07/10 Javascript
react+antd 递归实现树状目录操作
2020/11/02 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
Python模拟登录12306的方法
2014/12/30 Python
python正则表达式match和search用法实例
2015/03/26 Python
Python编程flask使用页面模版的方法
2018/12/28 Python
如何在django里上传csv文件并进行入库处理的方法
2019/01/02 Python
总结python中pass的作用
2019/02/27 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
python处理大日志文件
2019/07/23 Python
python 通过视频url获取视频的宽高方式
2019/12/10 Python
pymysql之cur.fetchall() 和cur.fetchone()用法详解
2020/05/15 Python
Python3实现建造者模式的示例代码
2020/06/28 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
美国最大的香水出口:FragranceX.com
2017/11/04 全球购物
VICHY薇姿俄罗斯官方网上商店:法国护肤品牌,火山温泉水
2019/11/22 全球购物
车间班组长岗位职责
2013/11/13 职场文书
敬老文明号事迹材料
2014/01/16 职场文书
ktv总经理岗位职责
2014/02/17 职场文书
参观接待方案
2014/03/17 职场文书
商业企业管理专业求职信
2014/07/10 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
Python类方法总结讲解
2021/07/26 Python
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers