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 相关文章推荐
jqTransform form表单美化插件使用方法
Jul 05 Javascript
火狐下input焦点无法重复获取问题的解决方法
Jun 16 Javascript
dreamweaver 8实现Jquery自动提示
Dec 04 Javascript
flash+jQuery实现可关闭及重复播放的压顶广告
Apr 15 Javascript
浅析Javascript ES6中的原生Promise
Aug 25 Javascript
jQuery快速高效制作网页交互特效
Feb 24 Javascript
ES6实现的遍历目录函数示例
Apr 07 Javascript
Easyui和zTree两种方式分别实现树形下拉框
Aug 04 Javascript
微信小程序之圆形进度条实现思路
Feb 22 Javascript
Vue.js实现的表格增加删除demo示例
May 22 Javascript
浅谈手写node可读流之流动模式
Jun 01 Javascript
详解前端任务构建利器Gulp.js使用指南
Apr 30 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
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
建站常用13种PHP开源CMS比较
2009/08/23 PHP
php设计模式 Builder(建造者模式)
2011/06/26 PHP
关于php循环跳出的问题
2013/07/01 PHP
php使用parse_url和parse_str解析URL
2015/02/22 PHP
PHP设计模式之原型模式定义与用法详解
2018/04/03 PHP
jQuery学习基础知识小结
2010/11/25 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
AngularJS动态加载模块和依赖的方法分析
2016/11/08 Javascript
JavaScript实现的select点菜功能示例
2017/01/16 Javascript
jQuery实现优雅的弹窗效果(6)
2017/02/08 Javascript
canvas简单快速的实现知乎登录页背景效果
2017/05/08 Javascript
浅谈Node异步编程的机制
2017/10/18 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
JS实现移动端在线签协议功能
2019/08/22 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
js实现炫酷光感效果
2020/09/05 Javascript
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
编写Python CGI脚本的教程
2015/06/29 Python
Python+django实现简单的文件上传
2016/08/17 Python
快速入门python学习笔记
2017/12/06 Python
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
python默认参数调用方法解析
2020/02/09 Python
浅析Python迭代器的高级用法
2020/07/16 Python
CSS3圆角边框和边界图片效果实例
2016/07/01 HTML / CSS
印尼值得信赖的在线交易网站:Bukalapak
2019/03/11 全球购物
管道维修工岗位职责
2013/12/27 职场文书
村委会主任先进事迹
2014/01/15 职场文书
《春天来了》教学反思
2014/04/07 职场文书
成绩单公证书
2014/04/10 职场文书
优秀研究生主要事迹
2014/06/03 职场文书
重阳节主题班会
2015/08/17 职场文书
聘任通知书
2015/09/21 职场文书
2019财务毕业实习报告
2019/06/27 职场文书
PostgreSQL自动更新时间戳实例代码
2021/11/27 PostgreSQL