JS RegExp类型
用来定义正则表达式的类型,
1. 通常情况下,我们可以直接用字面量形式来定义正则表达式,格式如下:
var expression = /pattern/flags
pattern为正则表达式
flags为标志,表明正则表达式的行为
g: 表示全局模式,被应用于所有字符串,并非发现一个就停止
i: 表示不区分大小写
m: 表示多行模式,会换行进行匹配
2.我们也可以用RegExp构造函数来定义正则表达式
接收两个参数,一个是要匹配的字符串模式,第二个是标志
例如: var pattern1 = / [bc]at /i;
var pattern2 = new RegExp("[bc]at", "i") //与pattern1等价
区别:字面量创建的正则表达式只会创建一个RegExp实例,而RegExp构造函数创建在每次迭代时都会创建新的
3.RegExp实例属性: lastIndex 开始搜索下一个匹配项的的字符位置,从0算起
4.RegExp 实例方法
(1)exec() 专门为捕获组而设计的,接收一个参数,为要应用模式的字符串,返回包含第一个匹配项的信息,返回的数组都是Array的实例
包含两个额外的属性,index和input index表示匹配项在字符串中的位置,input表示应用正则表达式的字符串
例如:
var text = "mom and dad and baby";
var pattern = /mom( and dad ( and baby)?)? /gi;
var matches = pattern.exec(text);
match.index // 0
match.input // "mom and dad and baby"
match[0] // "mom and dad and baby"
match[1] // "and dad and baby"
match[2] // "and baby"
对于exec()方法而言,即使设置了全局标志g,它每次也只会返回一个匹配项,若没设置g ,在同一个字符串上多次调用,它只会返回第一个匹配项
设置了全局标志,它会在字符串中继续查找新项
(2)text()方法 接收一个字符串参数,在模式与该参数匹配的情况下返回true ,否则返回false
可以快速检验字符串是否与正则匹配
可验证用户输入是否有效
JS RegExp类型的更多相关文章
- js中RegExp类型
ECMAScript通过RegExp类型来支持正则表达式. var expression = / pattern / flag ; pattern可以是任意的正则表达式.每个正则都带有标志,用以正则表 ...
- RegExp类型,单体内置对象
1.RegExp类型: 1)什么是正则表达式:RegExp --是一种规则,模式 --强大的字符串匹配工具 --创建: --使用RegExp构造函数创建:var re=new ...
- Javascript高级编程学习笔记(15)—— 引用类型(4)RegExp类型
JS中处理字符串最常用的应该就是正则了 同样正则(RegExp)类型也是JS中引用类型的一种 ECMAScript通过 RegExp类型 来支持正则表达式 创建正则 var expression = ...
- 引用类型-RegExp类型
JavaScript高级程序设计(第三版)笔记-第五章-RegExp类型 定义正则表达式有两种方式 1.用字面量形式定义正则表达式: ver expression = /patterns/flags; ...
- RegExp类型exec()方法的返回值说明
之前看别人写的插件经常会用到RegExp对象来验证输入,并且获取一些那时我并不晓得是什么东西的数组,来取值进行自定义的逻辑处理.今天学习了一下RegExp类型.终于有了一个初步的了解,至少不会看一会就 ...
- 5.4 RegExp类型
ECMAScript通过RegExp类型来支持正则表达式.使用下面类似Perl的语法,就可以创建一个正则表达式. var expression=/pattern/flags; 复制代码 其中的模式(p ...
- 《JavaScript高级程序设计》读书笔记 ---RegExp 类型
ECMAScript 通过RegExp 类型来支持正则表达式.使用下面类似Perl 的语法,就可以创建一个正则表达式.var expression = / pattern / flags ; 其中的模 ...
- JS 强制类型转化
在Js中, 强制类型转化分为两种情况: 一种是引用类型转化基本类型, 如数组转化成数字:一种是两种不同基本类型之间的转化,如字符串转化为数字.你不能将基本类型转化成引用类型,比如,不可能把数字转化为数 ...
- js基本类型存放和对象存放的区别(对象遍历)
js的基本类型,对象类型的应用在初学的时候,需要自己加以明确,明确了数据类型,在使用过程中才能正确使用变量.如下两个例子是摘自初学时的笔记,为大家提供参考. 1.对象可以存放属性和方法,js基本类型不 ...
随机推荐
- Github版本管理以及git使用
1.git客户端编译安装 同步系统时间服务器 ntpdate cn.ntp.org.cn 安装依赖包: [root@baolin ~]# yum install epel-release -y [ro ...
- SQL得到任意一个存储过程的参数列表sp_procedure_params_rowset
SQL得到任意一个存储过程的参数列表sp_procedure_params_rowsetexec sp_procedure_params_rowset 'up_rpt营业收入汇总表' PROCEDUR ...
- Oozie如何和安装部署
1.Oozie的简单介绍: .Oozie是一个工作流引擎服务器,用于运行hadoop map/reduce和hive等任务工作流,同时Oozie还是一个Java web程序,运行在Java Servl ...
- java keystore
JAVA有一个keystore用来存放私钥和证书,该文件是伴随JDK默认存在的,路径默认是/lib/security/cacerts,默认密码是changeit,实际上空密码也可以直接访问 其中cac ...
- 《深入探索Netty原理及源码分析》文集小结
<深入探索Netty原理及源码分析>文集小结 https://www.jianshu.com/p/239a196152de
- checkbox选中相关问题总结
html: <input type="checkbox" name="fruit" id="apple">苹果 <inpu ...
- js/jquery如何获取获取父窗口的元素
1.$("#父窗口元素ID",window.parent.document); 对应javascript版本为 window.parent.document.getElementB ...
- Spring MVC基础知识整理➣拦截器和自定义注解
概述 Spring MVC中通过注解来对方法或者类进行动态的说明或者标注,类似于配置标识文件的属性信息.当标注的类或者方式被使用时候,通过提取注解信息来达到对类的动态处理.在 MVC中,我们常用的注解 ...
- jQuery和Zepto冲突问题【解决】
特殊操作下,项目中同时引入这两个文件时,往往会有些冲突,应该加一句代码避免冲突 <script src="~/js/jquery-2.1.4.js"></scri ...
- http--tomcat--memcached配置
两个tomcat节点:172.16.100.7(tomcatA.magedu.com),172.16.100.8(tomcatB.magedu.com) 两个memcached节点:172.16.10 ...