Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jak filtrować numery telefonów?
twardes
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 13.01.2008

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


witam

mam zbiór nr. telefonów w postaci tablicy np.
Kod
228854891
228854892
228854893
228854894
228854895
każdy numer mam w postaci 9 cyfr po kolei

i mam string np.
Kod
Warszawa, Ochota, Rakowiec, 38m2,  2 pokoje , 329 000 zł tel. 508 155 453, 508-547-552 227545541, +48 22642-56-69  (Współpaca  z  agencją: NIE) (Źródło: INTERNET(2)
tutaj numery telefonów są nieregularne. Raz oddzielone przecinkiem i spacją, raz tylko przecinkiem. Potem jest problem bo numery czasami są podzielone spacjami czasami myślnikami a czasem w ogóle. Jedyna regularność polega na tym że są ciągiem 9 cyfr, albo zawierają prefix +48 (ewentualnie 10 ale wtedy pierwsza jest to 0).

moje pytanie to jak odfiltrować z takiego stringu numery telefonów z tablicy, tak aby oddzielić opis od numeru telefonu?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Cezar708
post
Post #2





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


to zmieniasz wyrażenie regularne, rozbijasz i składasz już bez numerów:

  1. <?php
  2. $string = "Warszawa, Ochota, Rakowiec, 38m2, 2 pokoje , 329 000 tel. 508 155 453, 508-547-552 227545541, +48 22642-56-69 +48 22642 56 69 (Wspca z agenNIE) 0 22642 56 69 (: INTERNET(2)";
  3. $arr = preg_split("/(+48|0).[0-9-[:space:]]{11}|(+48|0)[0-9]{9}|[1-9]([0-9-[:space:]]){10}|[1-9]([0-9]){8}/", $string );
  4. $opis = implode(" ", $arr);
  5. print_r($opis);
  6. ?>


sprawdziłem na kilka przykładów jakby co to dopracuj te wyrażenie
Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 18:02