美文网首页
(八)RegExp类型

(八)RegExp类型

作者: 萘小蒽 | 来源:发表于2019-03-18 21:30 被阅读0次

js通过RegExp类型来支持正则表达式。

var expression =  / pattern / flags ;

模式(pattern)部分可以是任何的正则表达式。每个正则表达式都可以带一个或多个标志(flag)以表明正则表达式的行为。


flag匹配模式支持下列3个标志

  • g ------全局(global)模式,在模式将被应用于所有字符串,而不是在匹配到第一个符合项的时候立即停止;

匹配字符串中所有“at”的实例。
var pattern = / at / g; 

  • i ------不区分大小写模式,在模式匹配时忽略字符串的大小写;
****
匹配第一个“bat”或者“cat”,不区分大小写。
var pattern = / [bc]at / i; 

  • m ------表示多行(multiline)模式,在到达一行文本末尾时还会继续查找下一行中是否存在与匹配的项;
匹配所有以“at”结尾的三个字符的组合,不区分大小写。
var pattern = / .at /gi; 

2. 特殊元字符与转义

正则表达式中元字符所有字符如下

( [ { \ ^ $ | ) ? * + . } ]

当前需求匹配的字符包含以上元字符的时候,比如匹配"[bc]at",那我们需要对他们进行转义。比如

匹配第一个”[bc]at“,不区分大小写;
var pattern = /\[bc\]at/i
匹配所有”.at“,不区分大小写;
var pattern2 = /\.at/gi

3. RegExp实例属性

上面的例子都是用字面量形式来写正则表达式,也是我们常用的方法。
我们还可以使用RegExp构造函数.

var pattern1 = /[bc]at/i;
var pattern2 =  new RegExp("[bc]at","i");
console.log(pattern1) // /[bc]at/i;
console.log(pattern2)// /[bc]at/i;

RegExp()方法接收两个参数,字符串模式pattern,和标志flag

\color{red}{注意:}\需要转义的字符用法也需要双重转义:

var pattern1 = /\[bc\]at/i; 
var pattern2 = new RegExp("\\[bc\\]at","i");  //  “\”被转义成 “\\”
console.log(pattern1) //  /\[bc\]at/i
console.log(pattern2) //  /\[bc\]at/i

RegExp的每个实例都具有以下属性,通过这些属性可以取得有关模式的各种信息。

  • global:布尔值,表示是否设置了g(全局)标志。
  • ignoreCase:布尔值,表示是否设置了i(大小写)标志。
  • lastIndex:整数,表示开始搜索下一个匹配项的字符位置,从0算起。
  • multiLine:布尔值,表示是否设置了m(多行)标志。
  • source:正则表达式的字符串表示,按照字面量形式而非传入构造函数中的字符串模式返回。
    其实没有多大用处,因为这些信息全都包含在模式声明中:
var pattern = /\[bc\]at/i;
/\[bc\]at/i
pattern.global;
//false
pattern.ignoreCase
//true
pattern.lastIndex
//0
pattern.source
//"\[bc\]at"

相关文章

  • (八)RegExp类型

    js通过RegExp类型来支持正则表达式。 模式(pattern)部分可以是任何的正则表达式。每个正则表达式都可以...

  • RegExp 类型

    3 个标志。  g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止;...

  • RegExp类型

    每个正则表达式都可带有一个或多个标志,用以标明正则表达式的行为。正则表达式的匹配模式支持下列3个标志: g:表示全...

  • RegExp类型

    JavaScript高级程序中对正则的介绍很浅,正则匹配可以很强大 标志 g:全局搜索 i:忽略大小写 m:多行搜...

  • RegExp类型

    创建正则表达式 字面量形式 其中,模式(pattern)部分可以是任何简单或复杂的正则表达式,可以包含字符类、限定...

  • 【JS学习笔记】第5章

    RegExp类型 ECMAScript通过RegExp类型支持正则表达式。var expression = /pa...

  • JavaScript 引用类型

    一、 RegExp 类型 JavaScript 通过 RegExp 类型来支持正则表达式。使用类似与 Perl 的...

  • js引用类型4:RegExp类型

    4.RegExp类型 ECMAScript 通过RegExp 类型来支持正则表达式。使用下面类似Perl 的语法,...

  • hive的正则表达式

    regexp 语法: A regexp B 操作类型: strings 描述: 功能与rlike相同 注:rlik...

  • 3、引用类型(3)(《JS高级》笔记)

    四、RegExp类型 JS通过RegExp类型来支持正则表达式,语法如下: 其中的模式(pattern)部分可以是...

网友评论

      本文标题:(八)RegExp类型

      本文链接:https://www.haomeiwen.com/subject/wtzvmqtx.html