Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyrażania regularne
Valker
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 5
Dołączył: 24.08.2007
Skąd: Łódź

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post
matix
post
Post #2





Grupa: Zarejestrowani
Postów: 278
Pomógł: 10
Dołączył: 13.02.2007
Skąd: Rybnik

Ostrzeżenie: (0%)
-----


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. ?>
Go to the top of the page
+Quote Post
likemandrake
post
Post #3





Grupa: Zarejestrowani
Postów: 175
Pomógł: 17
Dołączył: 23.06.2006

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 02:28