js正则

1、创建正则表达式的两种方式

正则表达式由两部分组成 :模式+标志

标志:g:全局;i:不区分大小写;m:多行匹配。

(1)字面量

示例1:匹配所有at:/at/g

示例2:匹配第一个不区分大小写的bat或者cat:/[bc]at/i

注意:元字符要进行转义。

(2)RegExp构造函数

RegExp构造函数接受两个字符串形式的参数:new RegExp('模式','标志')。

示例:new RegExp('/at/','g')

注意:元字符转义时,因为传入的参数是字符串,所以需要进行双重转义。

2、两种创建方式的对比

(1)两种方式创建的正则表达式,在循环时,每次都创建一个新的实例(ECMAscript5中明确规定的)

(2)利用typeof  pattern的类性都是object类性

(3)利用pattern instanceof  RegExp都返回true

(4)继承toLocaleString()和toString(),且都会返回正则表达式的字面量,与如何创建实例无关系

(5)valueOf() 返回正则表达式本身

3、RegExp实例的方法——exec()

定义:exec专门用于捕获设计的

用法:exec():接受一个参数,即要应用模式的字符串。

实例:

matches返回的是包含匹配项的数组或者null。虽然是数组但是有index,input。

重点理解下:matches[0],matches[1].........——第一项是与整个模式匹配的字符串,其他的是与模式中的捕获组匹配的字符串。释:/mom(dad(bay)?)?/g,整个模式匹配momdadbay,捕获组dadbaby和baby。

4、RegExp实例的方法——test

定义:目标字符串与某个模式是否匹配

用法:test()传入一个字符串参数,即要与模式匹配的字符串。返回true或者false。

用途:信息验证。

示例:var text = "123-34-34"

           var pattern = /\d{3}-\d{2}-\d{2}/   //匹配三个数字-两个数字-两个数字

          pattern.test(text)    //结果返回true

5、RegExp构造函数

千分化操作链接:https://www.jianshu.com/writer#/notebooks/40531328/notes/61201755

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 正则表达式功能: 测试字符串的某个模式。例如对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信...
    DecadeHeart阅读 3,725评论 0 1
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,455评论 0 4
  • 正则表达式是一个描述字符模式的对象,ECMAScript的RegExp类表示正则表达式。String与RegExp...
    Miss____Du阅读 4,214评论 0 4
  • 正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索...
    啊烟雨阅读 4,268评论 0 0
  • 前言 正则函数总是用的迷迷糊糊,有时直接用现成的,但是不符合我的作风,抽时间做了一次正则的梳理推荐文章:http:...
    BULL_DEBUG阅读 5,341评论 0 2