正则表达式找程序实用例子:正则表达式匹配不报含指定字符串,匹配后面跟着指定字符串

本文介绍了正则表达式在编程中的应用技巧,包括如何使用正则表达式进行高效的代码查询,提供了多个实用的正则表达式示例,并详细解释了每个元素的功能。

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

 1. 正则表达式对于程序员写代码的作用:

正确有序的使用正则表达式去阅读查询代码会事半功倍,编译移植开源软件程序的时候休要修改Makefile或者configure文件等等,需要有条件查找某些字符串,就必须用到正则表达式了!可见正则表达式对已一个程序员的左右非常重要!


 2. 正则表达式查找例子:

[^abc]表示不包含a、b、c中任意字符.

例如我要查找一个类的成员,但这个类是实例化类,不是指针,即不是“->”引用的,而是用 "."引用的,可以使用:  [^>{[(_]member    ##意思是查找member,目标是xxx.member,而不是_member,xxx->member

\bsprintf\b.(db).

这个例子查找spritntf后面跟着(db)的语句,也可以写成\bsprintf\b.*db,和上面不一样的就是,上面的可以跟着多个"db",\bsprintf\b.*db后面只能跟着1个"db"

\b((?!abc)\w)+\b

查找不包含字符串的句子,正则表达式查找。只要不包含"abc"的都会被选中!

\b((?!abc)xyz)+\b

查找前面不包含字符串abc,而且后面完整匹配xyz的内容,
这个例子是在全局查找含有xyz字符串,但是xyz前面不能含有abc的字符串。例如 "efg_oooooxyz" 回被选中。而:"abc1234xyz"不会被选中

(?!static)(?!void).*\bevent\b ?[^()]

匹配整个单词event,正则表达式查找包含指定和查找不包含特定字符串的写法。这里我们要查找的一个完整的单词event,前面不能有“static”和“void”, 后面不能有‘(’‘)’

如果不理解,请看看下面正则表达式的解释:

  \b 匹配单词的开始或结束;
  ?!exp 零宽负向先行断言,只会匹配后缀exp不存在的位置;
  \w 匹配字母或数字或下划线或汉字;
  + 重复一次或更多次;
  \b((?!abc)\w)+\b 匹配由字母或数字或下划线或汉字组成的字串,但字串中不能出现abc。
   .换行外的任意字符
   *匹配任意次数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mynameislinduan

你的鼓励是我最大动力写博客不易

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值