2014-11-02 47 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 - 它是由之前它,因此你需要看「後面」當前位置。