Bir dize bulmak için düzenli İfade ayırıcılar HARİÇ tutarak iki karakter arasında bulunan,
Bir süre baktım, ama muhtemelen "" doğru kelimeleri ile, yani burada. soruyorum Google edemem Bir dize iki ayırıcıları, ayırıcılar kendilerini dönmeden arasında yer alan karakterler bir dizi ayıklamak gerekiyor. C# Düzenli ifade nesnesi ile yapmaya çalışıyorum.
Basit bir örnek yararlı olmalıdır:
Hedef: köşeli parantez dönmeden arasındaki dize ayıklamak kendilerini.
Temel dize:Bu test string [] daha fazla veya daha az
Aşağıdaki reg kullanıyorum. ex.
\[.*?\]
Maç "[daha fazla ya da daha az]". Sadece almam lazım "Aşağı Yukarı", parantez olmadan. Bunu yapmak mümkün mü? Çok teşekkürler.
CEVAP
Kolay:
(?<=\[)(.*?)(?=\])
Teknik olarak bu lookaheads ve geriye ilerleme kullanıyor. Lookahead and Lookbehind Zero-Width Assertions bkz. Desen oluşur:
- [(geriye ilerleme) yakalanır . öncesinde
- olmayan açgözlü yakalanan bir grup. İlk durak] non-açgözlü ve
- (ilerleme) yakalanan bir izledi.
Alternatif olarak sadece köşeli parantez arasında. yakalayabilirsiniz
\[(.*?)\]
ve bütün maç yerine ilk yakalanan grup dönün.
Kullanarak daha büyük bir dize Düzenli...
Düzenli ifade Eşleşmesi için Desen,......
Nasıl bir dize bir düzenli ifade kulla...
Parantez arasında bir dize almak için ...
Düzenli ifade/NSString dize yerini bul...