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 相关文章推荐
浏览器无法运行JAVA脚本的解决方法
Jan 09 Javascript
javascript getElementsByTagName
Jan 31 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
Aug 11 Javascript
jQuery.extend 函数及用法详细
Sep 06 Javascript
angularjs表格ng-table使用备忘录
Mar 09 Javascript
第一篇初识bootstrap
Jun 21 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
Jul 12 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
Mar 10 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
Jul 28 Javascript
Vue 2.0学习笔记之Vue中的computed属性
Oct 16 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
Aug 16 Javascript
解决Vue打包上线之后部分CSS不生效的问题
Nov 12 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类Class的概念
2012/06/14 PHP
mysqli_set_charset和SET NAMES使用抉择及优劣分析
2013/01/13 PHP
php使用timthumb生成缩略图的方法
2016/01/22 PHP
PHP实现简易图形计算器
2020/08/28 PHP
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
2007/08/31 Javascript
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
js每隔5分钟执行一次ajax请求的实现方法
2013/11/27 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
2017/01/05 Javascript
jquery 实现复选框的全选操作实例代码
2017/01/24 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
2017/03/24 jQuery
使用Require.js封装原生js轮播图的实现代码
2017/06/15 Javascript
纯JS实现的读取excel文件内容功能示例【支持所有浏览器】
2018/06/23 Javascript
微信小程序scroll-x失效的完美解决方法
2018/07/18 Javascript
深入解读Node.js中的koa源码
2019/06/17 Javascript
jquery实现商品sku多属性选择功能(商品详情页)
2019/12/20 jQuery
使用vue-cli3+typescript的项目模板创建工程的教程
2020/02/28 Javascript
微信小程序学习总结(五)常见问题实例小结
2020/06/04 Javascript
Python3内置模块random随机方法小结
2019/07/13 Python
Python读取表格类型文件代码实例
2020/02/17 Python
Django REST Swagger实现指定api参数
2020/07/07 Python
OpenCV 使用imread()函数读取图片的六种正确姿势
2020/07/09 Python
python 实现端口扫描工具
2020/12/18 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
一款css实现的鼠标经过按钮的特效
2014/09/11 HTML / CSS
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
人事主管岗位职责范本
2013/12/04 职场文书
大学生素质拓展活动方案
2014/02/11 职场文书
人力资源部经理助理岗位职责
2014/03/04 职场文书
仓库管理员岗位职责
2014/03/19 职场文书
清洁工个人工作总结
2015/03/05 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
会计试用期工作总结2015
2015/05/28 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
react 项目中引入图片的几种方式
2021/06/02 Javascript
解决vue $http的get和post请求跨域问题
2021/06/07 Vue.js