Başlamak için normal ifadelerde "*" kullanılmasını önermiyorum. Evet, biliyorum, en çok kullanılan çok karakterli sınırlayıcı, ancak yine de kötü bir fikir. Bunun nedeni, o karakter için herhangi bir tekrarlama miktarıyla eşleşmesine rağmen, "any" ifadesinin 0 içermesidir; bu genellikle kabul etmemek için bir sözdizimi hatası atmak istediğiniz bir şeydir. Bunun yerine, +
uzunluk> 1'in herhangi bir tekrarıyla eşleşen işareti kullanmanızı öneririm . Dahası, görebildiğim kadarıyla, sabit uzunlukta parantezli ifadelerle uğraşıyorsunuz. Sonuç olarak, {x, y}
sözdizimini muhtemelen istenen uzunluğu belirtmek için kullanabilirsiniz .
Ancak, gerçekten açgözlü olmayan tekrarlamaya ihtiyacınız varsa, tüm güçlülere danışmanızı öneririm ?
. Bu, herhangi bir normal ifade tekrar belirtecinin sonuna yerleştirildiğinde, normal ifadenin bu bölümünü mümkün olan en az miktarda metin bulmaya zorlar.
Olduğu söyleniyor, ben ?
Dr. Örneğin, örnek girişinizi kullanmak için ((1)
bir eşleşme olarak tanımlanır (ikinci bir rparen eksikliğine dikkat edin).