JS正则表达式

本文详细介绍了正则表达式的各种元素及其用法,包括修饰符、元字符、表达式、预定义类、边界和量词等内容。此外还介绍了正则表达式在JavaScript中的常见方法,如test、exec、search及match等。

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

修饰符

g:goobal全文搜索,不添加,搜索到第一个匹配停止

i:ignore case忽略大小写,默认大小写敏感

m:multiple lines多行搜索

元字符

\b:匹配单词边界

\s:查找空白字符

\d:查找数字

 

表达式

[abc]:查找方括号之间的任何字符(内部可以连写[a-zA-z0-9])

[0-9]:查找任何从0至9的数字

(x|y):查找任何以|分隔的选项

[^abc]:查找不在方括号之间的字符

预定义类

. : 等价于:[^\r\n] 除了回车符和换行符之外的所有字符

\d:等价于[0-9] 数字字符

\D:非数字字符

\s:空白符

\S:非空白符

\w:单词字符

\W:非单词字符

边界

^:以xxx开始

$:以xxx结束

\b:单词边界

\B:非单词边界

量词

?:出现零次或一次(最多出现一次)

+:出现一次或多次(至少出现一次)

*:出现零次或多次(任意次)

{n}:出现n次

{n,m}:出现n到m次

{n,}:至少出现n次

分组应用

方法

RegExp.prototype.test(str)

        用于测试字符串参数中是否存在匹配正则表达式模式的字符串

        如果存在则返回true,否则false

        有一个lastIndex属性要注意 每次调用时lastIndex都会变化每次匹配时都是从上一次匹配结果的下一个字符开始找

        (lastIndex当前匹配结果的最后一个字符的下一个字符)

RegExp.prototype.exec(str)

        使用正则表达式模式对字符串执行搜索,并将更新全局RegExp对象的属性(lastIndex)以反映匹配结果

        如果没有匹配的文本则返回null,否则返回一个结果数组

String.search(reg)

        用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串

        方法返回第一个匹配结果index,查找不到返回-1

        search()方法不执行全局匹配,它将忽略标志g,并且总是从字符串的开始进行检索

String.match(reg)

        将检索字符串,以找到一个或多个与regexp匹配的文本

        如果没有找到任何匹配的文本,将返回Null

        否则将返回一个数组,其中存放了与它找到的匹配文本有关的信息

String.replace(a,b)

        (str,replaceSte)两个参数,第一个参数是原字符串中需要替换的字符,第二个参数为要替换成什么字符

        (reg,replaceStr)第一个参数为正则表达式

        (reg,function)第二个参数为一个函数

                    function会在每次匹配替换的时候调用,用四个参数

                            1.匹配字符串 match

                            2.正则表达式分组内容,没有分组则没有该参数

                            3.匹配项在字符串中的index

                            4.原字符串

        没有分组时

        有分组时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值