正则表达式符号

本文详细解析了正则表达式的重要符号及其用途,包括特殊字符标记、开始和结束匹配、重复次数限定、字符范围匹配、限制符使用、元字符解释等。通过实例展示每个符号的应用场景,旨在帮助开发者深入理解并熟练运用正则表达式。

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

稍微记一下正则表达式的符号:

符号符号用途说明

\

将下一个字符标记为一个特殊字符,或一个原义字符,或一个向后引用,或一个八进制转义字符

如:\n 表示换行, \\ 表示 \ 。

^匹配字符串的开始位置,如果设置了RegExp对象的Multiline属性,则 ^ 也匹配 \n 或 \r之后的位置。
$匹配字符串输入结束位置,若设置了RegExp对象的Multiline属性,则 $ 也匹配 \n 或 \r之前的位置。
{n}  n是一个非负整数,匹配确定的n次,如:o{2} 能匹配 food 中的 oo 但不能匹配 boy中的o,是 foood 则只匹配一次,fooood则匹配2次
{n,} 

n是一个非负整数,至少匹配n次,如:o{2,} 可以匹配 foood中的o,但 boy中的o则不行。

若为o{0,},则匹配任意个数的o,有没有o都可以。

 [a-z]字符范围,可以是0-9 或 a-z的形式 
 *匹配其前面的字符0此或多次 
(pattern) 

匹配pattern并获得这一匹配,获取的匹配可以从产生的 Matches 集合中得到 ,其实就是把括号中的内容看成一个整体

(或者说一个原子元素,不知这么说对不对)。

 +匹配前面的子表达式一次或多次,等价于{1,} 

 

 

 

 

 

 

 

 

 

 

 

 

?

用途一:匹配前面的表达式字符1此或0次,等价于{0,1}。

用途二:当该限制符紧跟其他任何一个限制符后时,表示非贪婪比坏模式。

(其他限制符包括: *, +, ?, {n}, {n,}, {n,m})。非贪婪模式尽可能少的匹配所搜索的字符串,

如:对于字符串 aaaa,a+?将匹配一个o,而o+将匹配所有o。

 .匹配除 \n 之外的任何字符,若要匹配包含 \n,可用:[.\n] 
 \w 匹配包括下划线的单词字符,包括数字,字符,下划线,等价于:[0-9a-zA-Z_] 
[^xyz]匹配任何不包含xyz的字符
 \W匹配不包含单词字符的任何字符,等价于[^0-9a-zA-Z_] 
 \b匹配单词中的边界,即单词和空格间的位置,如 ak\b 可以匹配 aknowledge 中的ak,但 oo\b 不能匹配loop 中的oo.
 \un匹配n,n是一个由4位十六进制数组成的unicode字符,比如中文字符是:\u4200-\u9fa5.
 \d匹配一个数组,等价于[0-9] 
 \D匹配一个非数字,等价于[^0-9] 
  

 

 

 

 

 

 

 

待续。。。

转载于:https://www.cnblogs.com/kukujiabo/p/3663134.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值