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 相关文章推荐
百度留言本js 大家可以参考下
Oct 13 Javascript
动态改变div的z-index属性的简单实例
Aug 08 Javascript
node.js中的path.normalize方法使用说明
Dec 08 Javascript
用Vue.js实现监听属性的变化
Nov 17 Javascript
js Canvas绘制圆形时钟效果
Feb 17 Javascript
Angular中的$watch、$watchGroup、$watchCollection
Jun 25 Javascript
微信小程序实现天气预报功能
Jul 18 Javascript
Bootstrap 模态框自定义点击和关闭事件详解
Aug 10 Javascript
深入理解Vue router的部分高级用法
Aug 15 Javascript
webpack4 SCSS提取和懒加载的示例
Sep 03 Javascript
如何解决.vue文件url引用文件的问题
Jan 18 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
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
PHP系统流量分析的程序
2006/10/09 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
php禁止浏览器使用缓存页面的方法
2014/11/07 PHP
利用PHP函数计算中英文字符串长度的方法
2014/11/11 PHP
关于jquery append() html时的小问题的解决方法
2010/12/16 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
jquery插件之定时查询待处理任务数量
2014/05/01 Javascript
node.js实现BigPipe详解
2014/12/05 Javascript
JavaScript实现打印星型金字塔功能实例分析
2017/09/27 Javascript
nodejs使用http模块发送get与post请求的方法示例
2018/01/08 NodeJs
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
JS简单判断是否在微信浏览器打开的方法示例
2019/01/08 Javascript
ES6知识点整理之模块化的应用详解
2019/04/15 Javascript
教你搭建按需加载的Vue组件库(小结)
2019/07/29 Javascript
Layui事件监听的实现(表单和数据表格)
2019/10/17 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
2020/05/19 Javascript
解决Nuxt使用axios跨域问题
2020/07/06 Javascript
微信小程序选择图片控件
2021/01/19 Javascript
在Django的View中使用asyncio的方法
2019/07/12 Python
python是否适合网页编程详解
2019/10/04 Python
python/golang实现循环链表的示例代码
2020/09/14 Python
Python爬虫代理池搭建的方法步骤
2020/09/28 Python
全球航班旅行搜索网站:Cheapflights
2017/05/19 全球购物
大学毕业生的自我鉴定
2013/11/30 职场文书
回门宴答谢词
2014/01/13 职场文书
师范生免费教育协议书范本
2014/10/09 职场文书
2014年单位法制宣传日活动总结
2014/11/01 职场文书
2014年涉外离婚协议书范本
2014/11/20 职场文书
物业工程部岗位职责
2015/02/11 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
2016校本研修培训心得体会
2016/01/08 职场文书
Go使用协程交替打印字符
2021/04/29 Golang
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript
新的CSS 伪类函数 :is() 和 :where()示例详解
2022/08/05 HTML / CSS