Düzenli ilerleme, geriye ilerleme ve atom grupları
Düzenli vücudumdaki bu şeyler buldum ama onları kullanmak için bir fikrim yok? Birisi nasıl çalıştığını anlamak için denemek böylece bazı örnekler var mı?
(?!) - negative lookahead
(?=) - positive lookahead
(?<=) - positive lookbehind
(?<!) - negative lookbehind
(?>) - atomic group
CEVAP
Lookarounds sıfır genişlik iddialar. Onay için bir düzenli ifade (doğru sağa veya sola geçerli konuma göre ileri ya da geri), başarılı veya başarısız olduğunda bir maç bulunamadı (göre ise pozitif veya negatif) ve atar eşleşen bölümü. Herhangi bir karakter tüketmezler. - onları takip için düzenli ifade eşleştirme (varsa), aynı imleç konumunda başlayacaktır.
Daha fazla ayrıntı için regular-expression.info okuyun.
- Pozitif ilerleme:
Kullanımı:
(?=REGEX_1)REGEX_2
Eğer REGEX_1 eşleşirse, REGEX_1, eşleşme atılır ve aynı pozisyonda REGEX_2 başlar arıyor sonra maç.
örnek:
(?=[a-z0-9]{4}$)[a-z]{1,2}[0-9]{2,3}
REGEX_1 dört alfasayısal karakter satır sonu ile eşleşir [a-z0-9]{4}$
.
REGEX_2 ya da iki harf, iki veya üç basamak ile izlenen bir maçlar [a-z]{1,2}[0-9]{2,3}
.
REGEX_1 dize uzunluğu aslında 4 ama REGEX_2 arayın aynı yerde başlar, böylece herhangi bir karakter tüketmek yok olmasını sağlar. Şimdi REGEX_2 dize başka kurallar eşleşmesini sağlar. Bak ileriye olmadan uzunlukta bir dize üç ya da beş maç olurdu.
- Negatif ilerleme
Kullanımı:
(?!REGEX_1)REGEX_2
Eğer REGEX_1; REGEX_1, aynı pozisyonda REGEX_2 başlar Ara kontrol ettikten sonra maç mı yoksa tek maç.
örnek:
(?!.*\bFWORD\b)\w{10,30}$
İleriye bak dizesinde FWORD
bölümünü kontrol eder ve eğer bulursa başarısız olur. Eğer bulmak değil mi FWORD
, bak-ileride başarılı olur ve aşağıdaki kısmı dize uzunluğu 10 ile 30 arasında olduğunu ve sadece sözcük karakteri a-zA-Z0-9_
içerdiğini doğrular
Bak-dinle-ileride benzer: sadece geçerli imleç konumuna arkasında görünüyor. Javascript gibi bazı düzenli tatlar bak arkada iddialar desteklemiyor. Ve bunu destekleyen en tatlar (PHP, Python vb)-arkasına bak kısmını sabit bir uzunlukta olması gerekir.
- Atom grupları temelde bir belirteci eşleşen sonra grup sonraki simgeleri unutur atar. atomic groups örnekler için bu sayfayı kontrol edin
Javascript: negatif geriye ilerleme eş...
Nasıl Android bir İlerleme Çubuğu Özel...
Nasıl bir kabuk için bir ilerleme çubu...
İlerleme Çubuğu ile HTML ve CSS...
Android ile dosya indirme ve bir Progr...