我在为当前的测试用例获取正确的正则表达式时遇到了麻烦。
示例测试用例:
#include <stdio.h>
#include <stdlib.h>
#include <foo_file.h>
int myint = atoi(foostring1);
float myfloat = atof(foostring2);
int myint2 = atoi(foostring3);
用例:
- 字符串包含 atof 和
- 字符串不包含字符串 stdlib.h
- 组无关紧要。我只想知道字符串是否存在。
使用正则表达式
(?=^#include <stdlib.h>).*atof
我可以找到该文件是否包含 stdlib 标头和 atof。效果很好。但是我似乎无法得到负面的期待正则表达式
(?!(?=.*^#include <stdlib.h>)).*(atoi)
我已经尝试了上述正则表达式行的许多小时的不同迭代,但无法使其正常工作。
假设我正在使用的 IDE 的正则表达式引擎允许匹配新/行返回字符,并允许我选择我想要使用的正则表达式解析器/引擎(但我通常使用 perl 的)