我好像搞不懂什么是注册表。expr.符号符合我的需求:
我已经在DEBUG()宏中封装了一些调试代码...
例如,要以日志级别1打印一些调试输出,我使用以下代码:
DEBUG_LVL_1(printf("some text");)然而,这并不是总是和所有的情况-有时我有没有宏包装器的printf语句。我想搜索并替换这些案例...也就是说,没有DEBUG_LVL_宏,但存在一条printf语句...
我该怎么做?
发布于 2012-06-04 17:32:33
如果您选择的语言/工具支持lookahead,您可以使用
^(?!.*DEBUG_LVL_1).*printf(?!^.*DEBUG_LVL_1)是一个negative lookahead assertion,如果在字符串中的某个位置找到DEBUG_LVL_1,则此操作将失败。
因此,此正则表达式将匹配printf,但前提是在同一行中的某处没有DEBUG_LVL_1。
发布于 2012-06-04 17:34:22
这里是^((?!DEBUG_LVL_1)printf.*)$,顺便说一句,使用这个站点的http://rubular.com来检查你的regexp
https://stackoverflow.com/questions/10879016
复制相似问题