javascript学习笔记(十二) RegExp类型介绍


Posted in Javascript onJune 20, 2012

1.匹配模式标记:
g ------ 表示全局模式,而不是发现第一个匹配成功就立刻结束
i ------- 表示不区分大小写模式
m ----- 表示多行匹配,一行结束时向下一行继续匹配

//匹配第一个bat 或cat,不区分大小写 
var pattern1 = /[bc]at/i 
var pattern2 = new RegExp("[bc]at","i"); //同上

使用RegEXp是字面量模式要转换成字符串
/\[bc\]at/ =======> "\\[bc\\]at"
/\.at/ ==========> "\\.at"
/name\/age/ ======> "name\\/age"
/\d.\d{1,2}/ ======> "\\d.\\d{1,2}"
/\w\\hello\\123/ ====>"\\w\\\\hello\\\\123

2.RegExp实例属性
global —— 布尔值,表示是否设置了g 标志
ignoreCase —— 布尔值,表示是否设置了i 标志
multiline —— 布尔值,表示是否设置了m 标志
lastIndex —— 整数,表示开始搜索下一个匹配项的位置
source —— 字面量形式的字符串

var pattern2 = new RegExp("\\[bc\\]at","i"); 
alert(pattern2.source); //"\[bc\]at"

3.RegExp实例方法
exec()方法 接受一个参数,即应用正则表达式的字符串,
返回数组和两个属性index和input,数组第一项是与整个模式匹配的字符串,其他项是与模式中的捕获组匹配的字符串
var text "mom and dat and baby"; 
var pattern = /mom( and dad( and baby)?)?/gi; var matches = pattern.exec(text); 
alert(matches.index); //0 
alert(matches.input); //"mom and dad and baby" 
alert(matches[0]); //"mom and dad and baby" 
alert(matches[1]); //" and dad and baby" 
alert(matches[2]); //" and baby"

非全局模式时每次调用exec()返回的都是第一次匹配的项
全局模式时每次调用ecec()返回字符串的下一个匹配项,lastIndex的值会增加

test()方法 接受一个参数,即应用正则表达式的字符串,匹配返回 true 否则返回 false

var text = "000-00-0000"; 
var pattern = /\d{3}-\d{2}-\d{4}/; if (pattern.test(test)) { 
alert("匹配!"); 
}

4.RegExp 构造函数属性
var text = "this has been a short summer"; 
var pattern = /(.)host/g; if (pattern.test(text)){ 
alert(RegExp.input); //this has been a short summer 最近一次要匹配的字符串,等价于RegExp.$_ ,opera不支持 
alert(RegExp.lastMatch); //short 最近一次的匹配项,等价于RegExp["$&"] ,opera不支持 
alert(RegExp.lastParen); //s 最近一次匹配的捕获组,等价于RegExp["$+"] ,opera不支持 
alert(RegExp.leftContext); //this has been a 匹配项前的文本,等价于RegExp["$`"] 
alert(RegExp.rightContext); // summer 匹配项后的文本,等价于RegExp["$‘"] , 
alert(RegExp.multiline); //false 是不是多行模式,等价于RegExp["$*"] ,opera和IE都不支持 
}

RegExp.$1 …… RegExp.$9 存储捕获组
var text = "this has been a short summer"; 
var pattern =/(..)or(.)/g; 
if (pattern.test(text)) { 
alert(RegExp.$1); //sh 
alert(RegExp.$2); //t 
}
Javascript 相关文章推荐
Jquery常用技巧收集整理篇
Nov 14 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
Nov 19 Javascript
javascript将相对路径转绝对路径示例
Mar 14 Javascript
jQuery实用技巧必备(上)
Nov 02 Javascript
JavaScript闭包和范围实例详解
Dec 19 Javascript
pm2 部署 node的三种方法示例
Oct 20 Javascript
总结js中的一些兼容性易错的问题
Dec 18 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
Feb 06 Javascript
JavaScript文本特效实例小结【3个示例】
Dec 22 Javascript
vue项目前端埋点的实现
Mar 06 Javascript
Angular CLI 使用教程指南参考小结
Apr 10 Javascript
浅谈Vue 自动化部署打包上线
Jun 14 Javascript
javascript学习笔记(十一) 正则表达式介绍
Jun 20 #Javascript
javascript学习笔记(十) js对象 继承
Jun 19 #Javascript
javascript学习笔记(九) js对象 设计模式
Jun 19 #Javascript
javascript学习笔记(八) js内置对象
Jun 19 #Javascript
javascript学习笔记(七) js函数介绍
Jun 19 #Javascript
javascript学习笔记(六) Date 日期类型
Jun 19 #Javascript
javascript学习笔记(五) Array 数组类型介绍
Jun 19 #Javascript
You might like
php入门学习知识点七 PHP函数的基本应用
2011/07/14 PHP
关于php中一些字符串总结
2016/05/05 PHP
PHP利用百度ai实现文本和图片审核
2019/05/08 PHP
jQuery EasyUI API 中文文档 - Menu菜单
2011/10/03 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
2013/04/01 Javascript
innerText 使用示例
2014/01/23 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
2014/04/10 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
2016/07/11 Javascript
JavaScript生成验证码并实现验证功能
2016/09/24 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
常用的js方法合集
2017/03/10 Javascript
vuejs2.0子组件改变父组件的数据实例
2017/05/10 Javascript
基于jQuery解决ios10以上版本缩放问题
2017/11/03 jQuery
Vue-cli配置打包文件本地使用的教程图解
2018/08/02 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
微信小程序select下拉框实现源码
2019/11/08 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
返回上一个url并刷新界面的js代码
2020/09/12 Javascript
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
Python/Django后端使用PIL Image生成头像缩略图
2019/04/30 Python
解决yum对python依赖版本问题
2019/07/05 Python
python 使用plt画图,去除图片四周的白边方法
2019/07/09 Python
Python将主机名转换为IP地址的方法
2019/08/14 Python
TensorFlow 多元函数的极值实例
2020/02/10 Python
python程序如何进行保存
2020/07/03 Python
python palywright库基本使用
2021/01/21 Python
英国最大的老式糖果店:A Quarter Of
2017/04/08 全球购物
电气自动化自荐信
2013/10/10 职场文书
会计专业自荐信范文
2013/12/02 职场文书
大学生通用个人的自我评价
2014/02/10 职场文书
环保建议书300字
2014/05/14 职场文书
医务人员医德考评自我评价
2015/03/03 职场文书
少年派的奇幻漂流观后感
2015/06/08 职场文书
美甲店的创业计划书模板
2019/08/23 职场文书
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers
向Spring IOC 容器动态注册bean实现方式
2022/07/15 Java/Android