2016-03-24 22 views
1

Ayıklamam gereken bir metin bloğum var. Şu anda bu regex'i kullanıyorum ancak tüm metni dosyanın sonuna kadar tutuyor. Bunu nasıl ilk 4 satır rMetin Bloğu Alın

regex Size sadece "\r\r\r\r" ile String.Split kullanabilirsiniz görünüyor

Regex(@"Education(\W+|\D+|\S+)*(^\r\r\r\r)*?", 
    RegexOptions.Singleline | RegexOptions.IgnoreCase | RegexOptions.Multiline); 


EDUCATION 

    Some Text 
    01/07/1911-    Some Text 
    01/23/1988    Some Text 

    Some Text    Some Text 
    01/11/1999-    Some Text 
    01/13/1911    Some Text 

    Some Text:    Some Text 
    01/01/1966-    Some Text 
    01/30/1911    Some Text 

    Some Text:    Some Text/Some Text 
    01/01/1911-    Some Text 
    01/30/1911    Some Text 
    01/01/1922-    Some Text 
    01/30/1933    Some Text 

Start of other text 
+0

Deneme "@" Eğitim (?: (?! \ R {4}).) * "'. Ayrıca "\ r \ r \ r \ r" 'ile bölmek isteyebilirsiniz. –

+0

@ WiktorStribiżew Teşekkürler. Bunu bir cevap olarak bırakırsanız, cevap olarak işaretleyeceğim. – Sorceri

cevap

0

\ beslemeleri ulaştığında durdurmak için regex'i ayarlayabilirsiniz.

Bir normal ifadeler kullanabilirsiniz gerekiyorsa

, (satırlı bir kullanmaya gerek) RegexOptions.Singleline | RegexOptions.IgnoreCase bayrakları ile

@"Education(?:(?!\r{4}).)*" 

kullanın.

(?:(?!\r{4}).)*, ilk 4 ardışık \r sembolüne (veya dizenin sonuna kadar) kadar herhangi bir metinle eşleşen temperli bir açgözlü belirteçtir.

+0

Çalıştığına sevindim. Cevabım yardımcı olduysa lütfen lütfen yukarıyı göz önünde bulundurun. –