Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyrażania regularne
Forum PHP.pl > Forum > PHP
Valker
Witam,

tworzę właśnie sobie classy do portalu który tworze i zauważyłem, że przyda mi sie użyć wyrażenia regularne.
Niestety nie jestem z tego dobry.

Znalazłem pare tutorialów i próbowałem samemu to zrobić, ale nie za bardzo mi to wychodziło.
Tak więc proszę Was o pomoc.

Chodzi o sprawdzenie czy podany przez usera kod ma poprawną forme.
Mój kod:
Kod
...

     function isKeyValid($sKeyToCheck)
     {
         $this->sGoodFormat = "tutaj chce wstawic jak powinienten kod wygladac";
    
         if(!ereg($this->sGoodFormat, $sKeyToCheck))
             $this->iReturn = 2;
        
     }

...


Proszę o pomoc w zrobieniu wyrażenia regularnego, kótry sprawdza czy taki format:
(4 litery lub cyfry)-(4 litery lub cyfry)-(4 litery lub cyfry)-(4 litery lub cyfry)

i oto przykładów parę:
Kod
FA5Y-GY9J-AJ67-VPM8
NGVH-MGKD-9SZM-IZUP
V8BD-A251-7KJG-ME92
2KGL-DRWI-4ZTL-8VV7
7JC7-YJWV-ZZS4-AGQ8
A3X4-ZF42-UKHX-T5S3
D88C-IEJ3-NRW4-TX3S
FY9Y-HG7Y-FJ2M-ASKC
GA1W-XM2P-7WWI-7RBQ
F7H7-UV59-XVHQ-LS9Y


Mam nadzieję, że uzyskam pomoc.

Pozdr,
Valker
matix
Spróbuj tak;)

  1. <?php
  2. $this->sGoodFormat = (bool) preg_match ( '@[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}@i', $sFormat);
  3. ?>
likemandrake
Cytat(matix @ 29.03.2008, 10:58:27 ) *
Spróbuj tak;)

  1. <?php
  2. $this->sGoodFormat = (bool) preg_match ( '@[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}@i', $sFormat);
  3. ?>


Przed znakiem myślnika (-) nie jest wymagane postawienie znaku \, w nawiasie [] po prostu stawiamy go na samym końcu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.