js中的RegExp正则表达式

本文介绍了JavaScript中的RegExp正则表达式,包括如何创建正则表达式、常用的方法如exec,以及正则表达式的标志如g。通过示例详细解析了正则表达式的使用方法和特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js中的RegExp正则表达式

创建一个正则表达式

  • 语法
    1. /pattern/flags–>/表达式/模式
    2. new RegExp(pattern [, flags])–>new RegExp(表达式,模式)
// 第一种方法
const reggex = /ab+c/; //使用两斜杠创建正则表达式
const reggex2 = /ab+c/gi; //使用两斜杠加模式创建正则表达式
const regex = /^[a-zA-Z]+[0-9]*\W?_$/gi;
//第二种方法
let regex = new RegExp("ab+c") //使用
let regex2 = new RegExp("ab+c","gi")
let regex = new RegExp("^[a-zA-Z]+[0-9]*\\W?_$", "gi");

正则表达式的常用方法

方法描述
execRegExp对象的方法。查询匹配结果。它返回一个数组(未匹配则返回null)。
testRegExp对象的犯法。是否能匹配RegExp正则表达式。能匹配返回true否则返回false
matchString对象的方法,查找匹配结果,返回一个数组。如果未匹配到返回null。
searchString对象的方法,返回匹配到的位置索引,或者在失败时返回-1。
replaceString对象方法,使用替换的字符串,替换掉匹配的字符。
splitString对象的方法,使用正则表达式切割字符串。
  • 使用exec方法匹配查找示例:
var myRe = /d(b+)d/g;
var myArray = myRe.exec("cdbcdladbdaaddz");
console.log(myRe)
console.log(myArray)

var myArray = /d(b+)d/g.exec("cdbcdladbdaaddz");
console.log(myArray)

var myRe = new RegExp("d(b+)d","g");
var myArray = myRe.exec("cdbcdladbdaaddz");
console.log(myArray)
console.log(myRe)
console.log(myRe.lastIndex)
console.log(myRe.source)

regexp_001

  • 上例中正则表达式执行的返回信息
    1. myArray结果对象:
      • 'dbd', 'b':匹配到的字符串和所有被记住的子字符串。
      • index:第一个被匹配到的字符串的索引位置。
      • input:初始字符串,被匹配的字符串
      • groups:分组信息
    2. myRe对象:
      • lastIndex:下一个匹配的索引值。
      • source:模式文本。即匹配时使用的正则表达式文本。

正则表达式的标志flags

  • 正则表达式有四个可选参数进行全局和不分大小写搜索。这些参数既可以单独使用也可以一起使用在任何顺序和包含正则表达式的部分中。
标志描述
g全局索引
i不区分大小写搜索。
m多行搜索。
y执行"粘性"搜索,匹配从目标字符串的当前位置开始,可以使用y标志。
  • 示例一使用g模式
var re = /\w+\s/g;
// var re = new RegExp("\\w+\\s", "g");
var str = "fee fi fo fum";
var myArray = str.match(re);
console.log(myArray);

regexp_002

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值