JavaScript学习笔记整理_用于模式匹配的String方法


Posted in Javascript onSeptember 19, 2016

用于模式匹配的String方法:

String支持4种使用正则表达式的方法:

seach()用于检索,参数是一个正则表达式,返回第一个与之匹配的子串的位置,找不到则返回-1,如果参数不是正则表达式,则首先会通过RexExp构造函数将它转换成正则表达式,seach()方法不支持全局搜索,它忽略修饰符g;

replace()用于检索与替换操作,第一个参数是一个正则表达式,第二个参数是要进行替换的字符串。它对调用该方法的字符串检索,按照模式匹配子串替换成第二个参数,若包含修饰符g则全文匹配。若第一个参数不是正则表达式而是字符串,则直接搜索替换掉这个字符串;

text.replace(/javascript/gi,'JavaScript')表示在text全文中搜索不区分大小写的javascript替换成JavaScript

如果用来替换的字符串中出现($加数字),则replace()方法将用与$加数字指代的子表达式匹配的文本来替换,如:

var quote = /"([^"]*)"/g

text.replace(quote,'“$1”'); 全文搜索与/"([^"]*)"/匹配的字符串,替换为“$1”(表示只改变两边的双引号为中文半角,而存储在$1中的内容不变)$1存储了指代与第一个左圆括号内的子表达式匹配的字符串;   

match() 唯一的参数是一个正则表达式,返回的是一个由匹配结果组成的数组,如果参数不是正则表达式,则首先会通过RexExp构造函数将它转换成正则表达式;

(二)如果这个正则表达式带修饰符g,match()返回的数组元素是匹配全文得到的所有字符串;

(二)如果这个正则表达式不带修饰符g,match()只检索第一个匹配,但他也返回一个数组(数组的第一个元素是匹配的整个字符串,接下来的元素是表达式中所有用圆括号括起来的子表达式匹配到的字符串,每个元素对应一个括号)

如:

var url = /(\w*):\/\/([\w.]+)\/(\S*)/;
  var text = 'http://www.w3school.com.cn/jsref';
  var result = text.match(url);
  if(result != null) {
  var fullurl = result[0];
  var protocol =result[1];
  var host = result[2];
  var path = result[3];
}

split()将字符串按参数指定的分隔符拆分为多个子串组成的数组,如:

'123,345,789'.split(','); //返回['123','345','789']

'1,   2  , 3, 4   ,5  ,  6'.split(/\s*,\s*/);  //返回['1','2','3','4','5','6']

以上就是小编为大家带来的JavaScript学习笔记整理_用于模式匹配的String方法的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

Javascript 相关文章推荐
JavaScript 高级语法介绍
Jun 15 Javascript
js 距离某一时间点时间是多少实现代码
Oct 14 Javascript
jQuery插件开发的五种形态小结
Mar 04 Javascript
js实现仿Discuz文本框弹出层效果
Aug 13 Javascript
JavaScript程序开发之JS代码放置的位置
Jan 15 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
Jun 21 Javascript
理解JavaScript原型链
Oct 25 Javascript
Node.JS中快速扫描端口并发现局域网内的Web服务器地址(80)
Sep 18 Javascript
webpack多入口多出口的实现方法
Aug 17 Javascript
解决VUE中document.body.scrollTop为0的问题
Sep 15 Javascript
基于vue2.0的活动倒计时组件countdown(附源码下载)
Oct 09 Javascript
jQuery层叠选择器用法实例分析
Jun 28 jQuery
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
Sep 19 #Javascript
JavaScript学习笔记整理_关于表达式和语句
Sep 19 #Javascript
javascript学习笔记_浅谈基础语法,类型,变量
Sep 19 #Javascript
js中用cssText设置css样式的简单方法
Sep 19 #Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
Sep 19 #Javascript
基于jQuery实现中英文切换导航条效果
Sep 18 #Javascript
jQuery EasyUI常用数据验证汇总
Sep 18 #Javascript
You might like
咖啡语言
2021/03/03 咖啡文化
Apache设置虚拟WEB
2006/10/09 PHP
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
JavaScript网页定位详解
2014/01/13 Javascript
javascript(js)的小数点乘法除法问题详解
2014/03/07 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
js用Date对象的setDate()函数对日期进行加减操作
2014/09/18 Javascript
JavaScript中的setMilliseconds()方法使用详解
2015/06/11 Javascript
使用Node.js配合Nginx实现高负载网络
2015/06/28 Javascript
JavaScript实现下拉菜单的显示和隐藏
2016/01/05 Javascript
Javascript生成带参数的二维码示例
2016/10/10 Javascript
javascript匀速动画和缓冲动画详解
2016/10/20 Javascript
Node.js 实现简单的接口服务器的实例代码
2017/05/23 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
2019/05/23 jQuery
[00:36]我的中国心——Serenity vs Fnatic
2018/08/21 DOTA
[50:48]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
在漏洞利用Python代码真的很爽
2007/08/26 Python
Python+Django在windows下的开发环境配置图解
2009/11/11 Python
Python网站验证码识别
2016/01/25 Python
详解Python函数作用域的LEGB顺序
2016/05/14 Python
Python imread、newaxis用法详解
2019/11/04 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
python 调用Google翻译接口的方法
2020/12/09 Python
HTML5语音识别标签写法附图
2013/11/18 HTML / CSS
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
2019/08/01 HTML / CSS
马歇尔耳机官网:Marshall Headphones
2020/02/04 全球购物
局部内部类是否可以访问非final变量?
2013/04/20 面试题
职称自我鉴定
2013/10/15 职场文书
应用电子专业学生的自我评价
2013/10/16 职场文书
会计主管岗位职责
2014/01/03 职场文书
小学生环保标语
2014/06/13 职场文书
活动总结结尾怎么写
2014/08/30 职场文书
工作简报怎么写
2015/07/21 职场文书
周末问候语大全
2015/11/10 职场文书
MySQL多表查询机制
2022/03/17 MySQL