Source insight使用之正则表达式

本文介绍了如何使用正则表达式匹配特定文本,并强调了在存在注释的情况下进行精确匹配的方法。通过实例展示了如何避免注释干扰,实现目标字符串的有效提取。

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

1.正则表达式中必须包含群组,即/(/)包含的部分。这部分将被作为关键字部分。
2.注释将被忽略,不计入正则表达式匹配范围,出现注释,则认为本行结束。
例:
在汇编语言中常以“;”作为行注释开始,要只匹配以下第一行中的“T_DSEDAY”部分
:T_DSEDAY:  ;一些注释
:T_DSTEWN: .blkb 1 ;一些注释
可以使用这样的表达式:
^:/([a-zA-Z0-9_]+/):/w+$
而只要匹配第二行中的“T_DSTEWN”可以使用
^:/([a-zA-Z0-9_]+/):/w+/.blkb/w+[0-9]+/w*$
正则表达式没有使用“大嘴法”,即最大匹配,如果不一直匹配到行尾,
则第一个表达式将也匹配第二行的内容。
如果正则表达式中出现";"则将无法匹配。
如要匹配第一行但写成这样:
^:/([a-zA-Z0-9_]+/):/w+;*
将无法匹配任何结果。
这个估计和C预处理器中将注释直接处理为空格有关系。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值