3
我寫了一個簡單的正則表達式模式與相應的樣本正則表達式中的MatchCollection可以找到C#中的所有模式嗎?
var regex = @"_if_.*_else_.*_endif_";
// 4 nested regex pattern
var sample = @"_if_111_else_222_if__if_333_else_444_endif__else_555_if_666_else_777_endif__endif__endif_";
var matches = Regex.Matches(sample, regex); // count : 1 ?!?!?
結果匹配的變量,而我希望它返回4條記錄返回只有1個記錄。
- _if_666_else_777_endif_
- _if_333_else_444_endif_
- _if__if_333_else_444_endif__else_555_if_666_else_777_endif__endif__endif_
- _if_111_else_222_if__if_333_else_444_endif__else_555_if_666_else_777_endif__endif__endif_
我怎麼能得到通過正則表達式在字符串中存在的所有模式?有沒有更好的辦法?
以何種形式,你需要的結果?你只是想要每個與正則表達式匹配的嵌套子字符串,還是你想構建某種樹? – zneak
@zneak,這是一個嵌套如果是這樣,如果找到正確的應該返回4個匹配,所以我不知道如何修改它的增益結果 – user6609534
我的意思是,你需要什麼結果?只是子表達的數量?每個子表達式字符串?因爲每個匹配的字符串都不會告訴你從哪開始,這嚴重限制了你做事的能力。 – zneak