2013-04-30 15 views
8

Java kullanıyorum.Parantezlerin yakalanması ayrı bir negatif görüşü etkiler mi?

"hyst and hy" 

Neden (hy) (?! [A-z]) döner iki "hy" ler: Aşağıdaki metin var. Buradaki fikir, herhangi bir "hy" ile uyuşmayan, herhangi bir karakterin a-z ile eşleşmesidir.

ben hy yaparsanız (?! [Az]) (parantez olmadan hy) çalışır (sadece ikinci "hy" bulur) ama RegEx'in parantez (hy) kullanırsam nedenini anlamıyorum hyst

+0

Normal ifadede belirgin bir sorun görmüyorum. Lütfen test kodunuzu gönderin. Belki de sorun, regex'i nasıl kullandığınıza dair ince bir hatadır. –

+0

Lütfen "return" iki "hy" ile ilgili kodları gösteriniz – Kent

cevap

3

'daki ilk "hy" ile eşleşir. Bir yakalama grubu kullandığınızda, iki sonuç elde edersiniz, ilki tüm desen ve ikincisi yakalama grubudur. İlk hy hiçbir zaman eşleşmedi.

Parantezini kaldırırsanız, yalnızca tüm desenle eşleşen sonuçları elde edersiniz.

İlgili konular