博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js进阶正则表达式11RegExp的属性和方法(RegExp的属性和方法,就是RegExp对象.(点)什么的形式)(正则表达式执行之前会被编译)...
阅读量:4620 次
发布时间:2019-06-09

本文共 1588 字,大约阅读时间需要 5 分钟。

js进阶正则表达式11RegExp的属性和方法(RegExp的属性和方法,就是RegExp对象.(点)什么的形式)(正则表达式执行之前会被编译

一、总结

1、 RegExp的属性和方法,就是RegExp对象.(点)什么的形式

2、正则表达式执行之前会被编译

 

二、js进阶正则表达式11RegExp的属性和方法

RegExp 对象属性

  • global RegExp 对象是否具有标志 g。

    语法:RegExpObject.global

    如果 g 标志被设置,则该属性为 true,否则为 false。

  • ignoreCase RegExp 对象是否具有标志 i。

    语法:RegExpObject.ignoreCase

    如果设置了 "i" 标志,则返回 true,否则返回 false。

  • multiline RegExp 对象是否具有标志 m。

    语法:RegExpObject.multiline

    如果 m 标志被设置,则该属性为 true,否则为 false。

  • source 正则表达式的源文本。

    RegExpObject.source

    source 属性用于返回模式匹配所用的文本。

    该文本不包括正则表达式直接量使用的定界符,也不包括标志 g、i、m。

  • lastIndex 一个整数,标示开始下一次匹配的字符位置。

    语法:RegExpObject.lastIndex

    该属性存放一个整数,它声明的是上一次匹配文本之后的第一个字符的位置。多用于在一个字符串中进行多次匹配

    上次匹配的结果是由方法 RegExp.exec() 和 RegExp.test() 找到的,它们都以 lastIndex 属性所指的位置作为下次检索的起始点。这样,就可以通过反复调用这两个方法来遍历一个字符串中的所有匹配文本。

    不具有标志 g 和不表示全局模式的 RegExp 对象不能使用 lastIndex 属性。

RegExp 对象方法

  • compile 编译正则表达式。

    compile 方法将正则表达式转换为内部的格式,从而执行得更快。例如,这允许在循环中更有效地使用正则表达式。当重复使用相同的表达式时,编译过的正则表达式使执行加速。

  • test 检索字符串中指定的值。返回 true 或 false。

    语法:RegExpObject.test(string)

    如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false。

  • exec 检索字符串中指定的值。返回找到的值,并确定其位置。

    如果 exec 方法没有找到匹配,将返回 null。如果找到匹配项,则 exec 方法返回一个数组

    数组元素 0 包含了完整的匹配项,而元素 1 到 n 包含的是匹配项中出现的任意一个子匹配项。

    除了数组元素和 length 属性之外,exec() 方法还返回两个属性。index 属性声明的是匹配文本的第一个字符的位置。input 属性则存放的是被检索的字符串 string。在调用非全局的 RegExp 对象的 exec() 方法时,返回的数组与调用方法 String.match() 返回的数组是相同的。

    当 RegExpObject 是一个全局正则表达式时,exec() 会在 RegExpObject 的 lastIndex 属性指定的字符处开始检索字符串 string。当 exec() 找到了与表达式相匹配的文本时,在匹配后,它将把 RegExpObject 的 lastIndex 属性设置为匹配文本的最后一个字符的下一个位置。

 

三、代码

1  2  3  4   
5 课堂演示 6 15 16 17 35 36

 

转载于:https://www.cnblogs.com/Renyi-Fan/p/9088500.html

你可能感兴趣的文章
iOS 环信离线推送
查看>>
WPFTookit Chart 高级进阶
查看>>
thulac安装问题
查看>>
你必须知道的.NET Day1
查看>>
vim实现实时自动保存
查看>>
mysql CREATE USER
查看>>
H3C 快速以太网和千兆以太网
查看>>
oracle触发器——ddl触发器
查看>>
oracle函数 SOUNDEX(c1)
查看>>
spring-data-elasticsearch使用出现的一些小问题
查看>>
雷云Razer Synapse2.0使用测评 -第二次作业
查看>>
Android ProgressBar手动控制开始和停止
查看>>
【iCore3 双核心板】DEMO 1.0 测试程序发布
查看>>
[Leetcode] Path Sum II
查看>>
spring <context:component-scan>使用说明(转)
查看>>
理解JavaScript中的“this”
查看>>
今天研究了一下 windows特有的 完成端口 IOCP 重叠IO端口 ,记录下它与普通socket的区别...
查看>>
关于TLBB 客户端UI界面修改几个定义了解
查看>>
使用awstat分析Nginx的访问日志
查看>>
leetCode-Best Time to Buy and Sell Stock II
查看>>