Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] porównanie ciągu znaków z wzorcem
Forum PHP.pl > Forum > Przedszkole
marian84
Witam!

Mam tablicę z zakresami kodów pocztowych przypisanych do województw:

  1. $zakres=array('5*-***'=>'dolnośląskie', '67-2**'=>'dolnośląskie', '85-***'=>'kujawsko-pomorskie', '86-***'=>'kujawsko-pomorskie', '87-***'=>'kujawsko-pomorskie', '88-***'=>'kujawsko-pomorskie', '89-1**'=>'kujawsko-pomorskie', '89-2**'=>'kujawsko-pomorskie', '89-4**'=>'kujawsko-pomorskie', '89-5**'=>'kujawsko-pomorskie', '08-5**'=>'lubelskie', '20-***'=>'lubelskie', '21-***'=>'lubelskie', '22-***'=>'lubelskie', '23-***'=>'lubelskie', '24-***'=>'lubelskie', '65-***'=>'lubuskie', '66-***'=>'lubuskie', '67-1**'=>'lubuskie', '67-3**'=>'lubuskie', '67-4**'=>'lubuskie', '68-***'=>'lubuskie', ............itd.);


Jak sprawdzić z którego zakresu jest dany kod pocztowy, np. 95-950?
Crozin
Lecisz po kolei ze wszystkim kodami z tej tablicy i porównujesz go z podanym przez użytkownika. Przy czym samo porównywanie możesz wykonać przy pomocy wyrażeń regularnych (pcre) albo po prostu porównywać znak po znaku przy czym jeżeli w kluczu jest '*' to akceptujesz wszystkie znaki spomiędzy '0' a '9'.
marian84
nie ma to jak najprostsze pomysły ...

Może komuś się przyda na przyszłość: baza zakresów kodów pocztowych na dzień: 5.05.2011:
  1. $zakres=array('5*-***'=>'dolnośląskie', '67-2**'=>'dolnośląskie', '85-***'=>'kujawsko-pomorskie', '86-***'=>'kujawsko-pomorskie', '87-***'=>'kujawsko-pomorskie', '88-***'=>'kujawsko-pomorskie', '89-1**'=>'kujawsko-pomorskie', '89-2**'=>'kujawsko-pomorskie', '89-4**'=>'kujawsko-pomorskie', '89-5**'=>'kujawsko-pomorskie', '08-5**'=>'lubelskie', '20-***'=>'lubelskie', '21-***'=>'lubelskie', '22-***'=>'lubelskie', '23-***'=>'lubelskie', '24-***'=>'lubelskie', '65-***'=>'lubuskie', '66-***'=>'lubuskie', '67-1**'=>'lubuskie', '67-3**'=>'lubuskie', '67-4**'=>'lubuskie', '68-***'=>'lubuskie', '69-***'=>'lubuskie', '26-3**'=>'łódzkie', '90-***'=>'łódzkie', '91-***'=>'łódzkie', '92-***'=>'łódzkie', '93-***'=>'łódzkie', '94-***'=>'łódzkie', '95-***'=>'łódzkie', '96-1**'=>'łódzkie', '96-2**'=>'łódzkie', '97-***'=>'łódzkie', '98-***'=>'łódzkie', '99-***'=>'łódzkie', '00-***'=>'mazowieckie', '01-***'=>'mazowieckie', '02-***'=>'mazowieckie', '03-***'=>'mazowieckie', '04-***'=>'mazowieckie', '05-***'=>'mazowieckie', '06-***'=>'mazowieckie', '07-***'=>'mazowieckie', '08-1**'=>'mazowieckie', '08-2**'=>'mazowieckie', '08-3**'=>'mazowieckie', '08-4**'=>'mazowieckie', '09-***'=>'mazowieckie', '26-4**'=>'mazowieckie', '26-5**'=>'mazowieckie', '26-6**'=>'mazowieckie', '26-7**'=>'mazowieckie', '26-8**'=>'mazowieckie', '26-9**'=>'mazowieckie', '27-1**'=>'mazowieckie', '27-3**'=>'mazowieckie', '96-3**'=>'mazowieckie', '96-5**'=>'mazowieckie', '30-***'=>'małopolskie', '31-***'=>'małopolskie', '32-***'=>'małopolskie', '33-***'=>'małopolskie', '34-1**'=>'małopolskie', '34-2**'=>'małopolskie', '34-4**'=>'małopolskie', '34-5**'=>'małopolskie', '34-6**'=>'małopolskie', '34-7**'=>'małopolskie', '38-245'=>'małopolskie', '38-246'=>'małopolskie', '38-247'=>'małopolskie', '38-3**'=>'małopolskie', '45-***'=>'opolskie', '46-***'=>'opolskie', '47-1**'=>'opolskie', '47-2**'=>'opolskie', '47-3**'=>'opolskie', '48-***'=>'opolskie', '49-***'=>'opolskie', '35-***'=>'podkarpackie', '36-***'=>'podkarpackie', '37-***'=>'podkarpackie', '38-1**'=>'podkarpackie', '38-20*'=>'podkarpackie', '38-21*'=>'podkarpackie', '38-22*'=>'podkarpackie', '38-23*'=>'podkarpackie', '38-241'=>'podkarpackie', '38-242'=>'podkarpackie', '38-243'=>'podkarpackie', '38-244'=>'podkarpackie', '38-4**'=>'podkarpackie', '38-5**'=>'podkarpackie', '38-6**'=>'podkarpackie', '38-7**'=>'podkarpackie', '39-***'=>'podkarpackie', '15-***'=>'podlaskie', '16-***'=>'podlaskie', '17-***'=>'podlaskie', '18-***'=>'podlaskie', '19-1**'=>'podlaskie', '19-2**'=>'podlaskie', '76-2**'=>'pomorskie', '77-1**'=>'pomorskie', '77-2**'=>'pomorskie', '77-3**'=>'pomorskie', '80-***'=>'pomorskie', '81-***'=>'pomorskie', '82-1**'=>'pomorskie', '82-2**'=>'pomorskie', '82-4**'=>'pomorskie', '82-5**'=>'pomorskie', '83-***'=>'pomorskie', '84-***'=>'pomorskie', '89-6**'=>'pomorskie', '34-3**'=>'śląskie', '40-***'=>'śląskie', '41-***'=>'śląskie', '42-***'=>'śląskie', '43-***'=>'śląskie', '44-***'=>'śląskie', '47-4**'=>'śląskie', '25-***'=>'świętokrzyskie', '26-0**'=>'świętokrzyskie', '26-1**'=>'świętokrzyskie', '26-2**'=>'świętokrzyskie', '27-2**'=>'świętokrzyskie', '27-4**'=>'świętokrzyskie', '27-5**'=>'świętokrzyskie', '27-6**'=>'świętokrzyskie', '28-***'=>'świętokrzyskie', '29-***'=>'świętokrzyskie', '10-***'=>'warmińsko-mazurskie', '11-***'=>'warmińsko-mazurskie', '12-***'=>'warmińsko-mazurskie', '13-***'=>'warmińsko-mazurskie', '14-***'=>'warmińsko-mazurskie', '19-3**'=>'warmińsko-mazurskie', '19-4**'=>'warmińsko-mazurskie', '19-5**'=>'warmińsko-mazurskie', '82-3**'=>'warmińsko-mazurskie', '60-***'=>'wielkopolskie', '61-***'=>'wielkopolskie', '62-***'=>'wielkopolskie', '63-***'=>'wielkopolskie', '64-***'=>'wielkopolskie', '77-4**'=>'wielkopolskie', '89-3**'=>'wielkopolskie', '70-***'=>'zachodniopomorskie', '71-***'=>'zachodniopomorskie', '72-***'=>'zachodniopomorskie', '73-***'=>'zachodniopomorskie', '74-***'=>'zachodniopomorskie', '75-***'=>'zachodniopomorskie', '76-0**'=>'zachodniopomorskie', '76-1**'=>'zachodniopomorskie', '78-***'=>'zachodniopomorskie');
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.