2014-11-02 22 views
0

开始我目前有以下的正则表达式比赛,其中不

(?!\(\) =>)test\(.*,.*\) 

但我只喜欢它来搭配

test("Test 1",() { expect(1, equals(1)); }); 
从下面的文字

而且不

test(test,() { expect(test, "Test3"); })) 

import 'package:unittest/unittest.dart'; 

main() { 

    testExecuter("fileName", test,() => $0); 
    test("Test 1",() { expect(1, equals(1)); }); 

    var tests = ["Test2", "Test3"]; 

    for (var test in tests) { 
    testExecuter("fileName", test,() => test(test,() { expect(test, "Test3"); })); 
    } 
} 

我使用regexpal.com测试它由于某种原因,正则表达式的部分说法不与(开始)=>您使用的是超前说法是不工作

+0

您确定这是C#吗? 'import'并不是我通常与C#相关的东西,格式看起来更像Java ... – Tim 2014-11-02 22:35:12

+1

@Tim:这是他正在使用正则表达式的文本,而不是运行正则表达式的程序... – 2014-11-02 22:39:02

+0

@TimPietzcker - 啊。应该仔细阅读问题。谢谢。 – Tim 2014-11-02 22:40:54

回答

1

时,你应该使用一个回顾后断言:

(?<!\(\) =>)test\(.*,.*\) 

毕竟,"test(test,()..."做其实不是开始​​3210 - 它是由之前它,因此你需要看“后面”当前位置。