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 相关文章推荐
用JTrackBar实现的模拟苹果风格的滚动条
Aug 06 Javascript
Firefox window.close()的使用注意事项
Apr 11 Javascript
Jquery 数据选择插件Pickerbox使用介绍
Aug 24 Javascript
JS简单的图片放大缩小的两种方法
Nov 11 Javascript
js使用eval解析json实例与注意事项分享
Jan 18 Javascript
js实现网页自动刷新可制作节日倒计时效果
May 27 Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
Dec 15 Javascript
利用JQuery写一个简单的异步分页插件
Mar 07 Javascript
JavaScript实现图片自动加载的瀑布流效果
Apr 11 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(二)
Sep 14 Javascript
浅谈vuex 闲置状态重置方案
Jan 04 Javascript
Vue 中可以定义组件模版的几种方式
Aug 06 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环境无法上传文件的解决方法
2014/04/30 PHP
在网页中屏蔽快捷键
2006/09/06 Javascript
把textarea中字符串里含有的回车换行替换成<br>的javascript代码
2007/04/20 Javascript
JavaScript之自定义类型
2012/05/04 Javascript
Jquery在指定DIV加载HTML示例代码
2014/02/17 Javascript
ff chrome和ie下全局动态定位的异同及全局高度的取法
2014/06/30 Javascript
JavaScript中创建字典对象(dictionary)实例
2015/03/31 Javascript
Jquery实现瀑布流布局(备有详细注释)
2015/07/31 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
2016/06/25 Javascript
JavaScript的变量声明提升问题浅析(Hoisting)
2016/11/30 Javascript
js随机生成一个验证码
2017/06/01 Javascript
js推箱子小游戏步骤代码解析
2018/01/10 Javascript
深入理解Node module模块
2018/03/26 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
浅谈Vuex注入Vue生命周期的过程
2019/05/20 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
详解vue中使用axios对同一个接口连续请求导致返回数据混乱的问题
2019/11/06 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
在Vue中使用mockjs代码实例
2020/11/25 Vue.js
Python常用内置函数总结
2015/02/08 Python
Python守护进程用法实例分析
2015/06/04 Python
python itchat实现微信好友头像拼接图的示例代码
2017/08/14 Python
python对html过滤处理的方法
2018/10/21 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
简单的命令查看安装的python版本号
2020/08/28 Python
CSS3使用多列制作瀑布流
2016/05/10 HTML / CSS
YOOX美国官方网站:全球著名的多品牌时尚网络概念店
2016/09/11 全球购物
酒店管理专业学生求职信
2013/09/27 职场文书
初中生操行评语大全
2014/04/24 职场文书
公司总经理任命书
2014/06/05 职场文书
义诊活动总结
2015/02/04 职场文书
高一军训口号
2015/12/25 职场文书
Mysql分析设计表主键为何不用uuid
2022/03/31 MySQL