Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyrażenie regularne do polskich numerów tel.
magnus
post 16.02.2008, 00:10:28
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 15
Dołączył: 15.11.2007
Skąd: Nowogród Bobrz.

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


Jak w temacie potrzebuję a nie mogę znaleźć.
Na regexlib.com polskich, ani nawet podobnych, nie ma a nie jestem na tyle obcykany z regexami, żeby przerabiać.

Zależy mi na rozpoznawaniu nast. formatów numerów:
stacjonarne:
681111111
0681111111
68 111 11 11
068 111 11 11
+48681111111
+48 68 111 11 11
komórki:
666666666
666 666 666
+48666666666
+48 666 666 666
W sumie tylko te. Ewentualnie z kreską zamiast spacji, ale to już nie problem. No i bez sprawdzania poprawności kodu kraju, kierunkowego czy operatora.

Na razie zrobiłem takie wyrażenie:
^([+]\d{11})|([0]?\d{9})|((([0]?)|([+]\d{2}[ ]))?\d{2}[ ]\d{3}[ ]\d{2}[ ]\d{2})|(([+]\d{2}[ ])?\d{3}[ ]\d{3} \d{3})$

No i jak to testuję np. na www.regextester.com, to wygląda ok, ale jak wrzucę na stronę do walidacji, to uznaje za poprawny np taki numer:
+48www666555666 :|
Co tam jest źle? I ewentualnie jak to jeszcze poprawić/skrócić/uprościć?


--------------------
Efemental.pl - nasz punkt słyszenia :: recenzje :: tylko metal!
Opensource'owy klon Cantra: http://github.com/magnax/Simtr
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:16