正则表达式

本文详细介绍了正则表达式中的元字符及其用法,包括行开头与结尾的匹配、字符集的定义、特殊字符的功能及组合使用技巧。通过学习这些核心概念,读者能够更好地理解和应用正则表达式。

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

元字符:在正则表达式中有特殊含义的字符,如:. ?
^ 行开头的位置
$ 行结束的位置
这两个只是匹配行中的位置,并不匹配任何字符。
当开启多行模式时,可以匹配多行
[] 匹配一个字符,此字符列在这里:如[ab]表示匹配一个字符,此字符是a或b
可以用-表示范围:如[0-2]等价于[012],[a-c]等价于[abc],[0-2a-c]等价于[012abc]
只有-在两个字符中间才表示范围,在最开始不表示范围:如[-a-c]表示或者-或者a或者b或者c
[]里面的字符与在外面的有不同:如[.?!],表示或者.或者?或者!,失去了元字符的概念
[^] 匹配一个字符,此字符没有列在这里:如[^ab],表示匹配一个字符,此字符不是a和b
. 匹配任意一个字符
在[]里,它失去了元字符的概念
有些语言,代表除了换行之外的任意字符
| 或:abc|bbb
常与()一起使用:abc|bbb|ddd: 表示abc,bbb,ddd:。(abc|bbb|ddd):表示abc:,bbb:,ddd:
\< > 单词的开始和结束边界:
这里的单词是指字母(26个字母)数字(10个数字)序列
\b也可作为单词边界,但在[]中表示backspace
? 前面的字符是可选的:如abc?表示ab或abc,c可以有,也可以没有
+前面的字符重复一次或多次:如ba+表示ba,baa,baaa …
前面的字符是可选的或重复多次:如ba表示b,ba,baa,baaa …
{min,max} 重复的范围:如ba{2,3}表示baa,baaa。
()可以记录匹配的结果:如(abc|bbb|ddd):\1,\1表示()匹配的结果
顺序按(从左到右排列:(abc(bbb)cc)cc(dd),\1表示(abc(bbb)cc),\2表示(bbb),\3表示(dd)
(?:)可以使()中的匹配不进行记录:(abc(?:bbb)cc)cc(dd),\1表示(abc(bbb)cc),\2表示(dd)
(?=xxx)定位到右边是xxx的位置,不进行匹配:如(?=abab)a,只匹配abab中的a
(?<=xxx)定位到左边是xxx位置,不进行匹配:如s/(?<=\b Jeff)(?=s\b)/’/g,所有的Jeffs变为Jeff’s
(?!xxx)定位到右边不是xxx的位置,不进行匹配:如(?=abab)a,只匹配abab中的a
(?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值