2016-04-05 18 views
-1

Düzenli olarak böyle bir ifade var: ('0' | ['0' - '9'] + '.' ['0' - '9' 'a' - 'f'] *)ORT ile ilişkilendirme OR

Ben http://www.regexpal.com/ şey denilen kullanışlı bir araç kullanıyorum bunu test etmek için bir '0' gayet ekleme mantığı anlamaya çalışırken sıkışmış kulüpler olduğunu ama sonra neden alamadım VEYA başka karakterleri eklemeyi engeller. Herhangi bir açıklama takdir edilmektedir.

+2

Neden normal ifadenizde tırnak var? Ve regex'inle eşleşmeye ne deniyorsun? Bazı geçerli örnekler yardımcı olacaktır. –

+0

Bu regex ile neyi başarmaya çalıştığınızı anlamıyorum, böylece onunla bile oynayabiliyorum, bazı test örneklerinde ve beklenen sonuçlarda [değiştirebilir misiniz? –

+0

Şu anda '.' Bekleniyor. '0' dışında bir girdinin parçası olmak için, tek tırnak işaretlerini dahil etmeyi farz ediyorum. –

cevap

0

Normal ifadedeki parantezlerin nasıl çalıştığını anladığınızdan emin değilim. Seni engelleyen OR parçası değil.

('0'|['0'‐'9']+'.'['0'‐'9' 'a'‐'f']*) 

tırnak veya örneğin 0000000'z''''9 veya böyle başka bir şey için ya '0' maç olacaktır. Tırnaklar birebir olarak kabul edilir ve dönem bir joker olduğu için kaçmak zorundadır.

(0|[0-9]+\.[0-9a-f]*) 

Aradığınızı olabilir. Bu değerler maç olacak gibi 0 veya 23. veya 3.14159

0

senin regex sayısız sorunlar vardır (Diğerleri işaret gibi), ama gelen dönüşümlerde hakkında bir şeyler açıklayacağım.

Çoğu normal ifade, kısa devre alternatifleri olacaktır.

Bu, önce diğer ifadeyle eşleşmesini isterseniz, yeniden sıralamanız gerektiği anlamına gelir.

İlgili konular