Regex 如何使用LLVM';s文件在检查DAG在场的情况下检查?

Regex 如何使用LLVM';s文件在检查DAG在场的情况下检查?,regex,llvm,Regex,Llvm,我用它来验证我编写的一些LLVM过程的结果 我知道我可以通过执行以下操作来检查两个字符串是否相等: CHECK: first string = [[ID:[0-9]+]] CHECK: second string = [[ID]] CHECK: first string = [[ID:[0-9]+]] CHECK: second string = [[!ID]] 但有没有办法检查它们是否不相等?e、 例如: CHECK: first string = [[ID:[0-9]+]] CHECK:

我用它来验证我编写的一些LLVM过程的结果

我知道我可以通过执行以下操作来检查两个字符串是否相等:

CHECK: first string = [[ID:[0-9]+]]
CHECK: second string = [[ID]]
CHECK: first string = [[ID:[0-9]+]]
CHECK: second string = [[!ID]]
但有没有办法检查它们是否不相等?e、 例如:

CHECK: first string = [[ID:[0-9]+]]
CHECK: second string = [[ID]]
CHECK: first string = [[ID:[0-9]+]]
CHECK: second string = [[!ID]]
当然,
CHECK-NOT
是显而易见的答案,但是我实际上使用的是
CHECK-DAG
,这与
CHECK-NOT
不太合适:

CHECK-DAG: this can appear anywhere
CHECK-DAG: first string = [[ID:[0-9]+]]
CHECK-DAG: second string = [[!ID]]
我在这里专门处理数字,所以我会对一个只解决这个问题的解决方案感到满意。如果所有其他方法都失败了,即使是只解决
[0-9]
(无重复)的解决方案也可以