Preg_match [duplicate] kullanarak php kalıbı eşleştirme

Sep 04 2020

Php'de belirli bir kalıbı eşleştirmeye çalışıyorum. Benim kodum:

preg_match("/(?P<name>\w+)(?P<digit>\d+)/", $custom)

Ama işe yaramayacak. İstediğim şey, kalıbın bu karakterlerden herhangi birini herhangi bir biçimde (genellikle bir URL'nin yoluyla eşleşen kalıp) içerebilmesidir:

(az) (AZ) (0-9) (-)

Ne yapabilirim?

Yanıtlar

1 Barmar Sep 04 2020 at 07:49

Yalnızca harf, rakam, alt çizgi veya kısa çizgi içerip içermediğini kontrol etmek istiyorsanız, yakalama gruplarına ihtiyacınız yoktur. Nicelik belirteci ile tek bir karakter kümesi kullanın. Ve tüm dizeyi eşleştirmek için ^ve $ile sabitleyin.

preg_match('/^[-\w]+$/', $custom)