konto usunięte

Temat: wyrażenia regularne w php

Witam,
mam taki ciąg znaków:
{tooltipHtml:"3 Maja (0,0\x26#160;km / 0 s)"}

i chciałbym wyciąć wszystko od : do pierwszego nawiasu (czyli chciałbym otrzymać coś takiego:3 Maja).
Próbuję takim kodem:
$str = preg_match_all('|{tooltipHtml:,([0-9a-zA-ZąćęłńóśźżĄĆĘŁŃÓŚŹŻ] )|si', $text, $jest);
$a=$jest[0][0];
$wynik = array_unique ($jest[0]);

ale coś nie otrzymuję żadnego wyniku...

Wiecie może co jest nie tak??

Łukasz

konto usunięte

Temat: wyrażenia regularne w php

preg_match("/tooltipHtml:\"(.*?)\(/", $tekst, $match);
print_r($match[1]);

testowane, działa.

regardsKuba Świegot edytował(a) ten post dnia 01.09.08 o godzinie 12:10

konto usunięte

Temat: wyrażenia regularne w php

działa, super - dzięki WIELKIE :)))

ps. pomógłbyś mi jeszcze wyciągnąć z tego:
{"name":"generala-henryka-dabrowskiego-","Status":{"code":200,"request":"geocode"},"Placemark":[{"id":"p1","address":"Generała Henryka Dąbrowskiego, Rumia, Polska","AddressDetails":{"Country":{"CountryNameCode":"PL","CountryName":"Polska","AdministrativeArea":{"AdministrativeAreaName":"Pomorskie","SubAdministrativeArea":{"SubAdministrativeAreaName":"Wejherowski","Locality":{"LocalityName":"Rumia","Thoroughfare":{"ThoroughfareName":"Generała Henryka Dąbrowskiego"}}}}},"Accuracy": 6},"Point":{"coordinates":[18.406852,54.564917,0]}}]}

- address: Generała Henryka Dąbrowskiego, Rumia, Polska
- SubAdministrativeAreaName: Wejherowski ?? :)
- AdministrativeAreaName: Pomorskie

z góry dzięki:)Łukasz Peta edytował(a) ten post dnia 01.09.08 o godzinie 13:39
Przemek Szalko

Przemek Szalko iOS Developer + Full
Stack Developer

Temat: wyrażenia regularne w php

HINT: To jest string w formacie JSON.

konto usunięte

Temat: wyrażenia regularne w php

preg_match("/\"address\":\"(.*?)\"(.*?)\"SubSubAdministrativeAreaName\":\"(.*?)\"(.*?)\"AdministrativeAreaName\":(.*?)\"/si", $txt, $matches);

echo $matches[1]; // address
echo $matches[3]; // SubAdministrativeAreaName
echo $matches[5]; // AdministrativeAreaName

konto usunięte

Temat: wyrażenia regularne w php

cosik nie działa :(

konto usunięte

Temat: wyrażenia regularne w php

to wyciągnij oddzielnie trzema matchami te dane, ja chciałem w jednym ale cuś spierd*$(*# ;]

konto usunięte

Temat: wyrażenia regularne w php

poprawka:

$txt = '{"name":"generala-henryka-dabrowskiego-","Status":{"code":200,"request":"geocode"},"Placemark":[{"id":"p1","address":"Generała Henryka Dąbrowskiego, Rumia, Polska","AddressDetails":{"Country":{"CountryNameCode":"PL","CountryName":"Polska","AdministrativeArea":{"AdministrativeAreaName":"Pomorskie","SubAdministrativeArea":{"SubAdministrativeAreaName":"Wejherowski","Locality":{"LocalityName":"Rumia","Thoroughfare":{"ThoroughfareName":"Generała Henryka Dąbrowskiego"}}}}},"Accuracy": 6},"Point":{"coordinates":[18.406852,54.564917,0]}}]}';

preg_match("/\"address\":\"(.*?)\"/", $txt, $matches);

echo $matches[1]."<br>";

preg_match("/\"SubAdministrativeAreaName\":\"(.*?)\"/", $txt, $matches);

echo $matches[1]."<br>";

preg_match("/\"AdministrativeAreaName\":\"(.*?)\"/", $txt, $matches);

echo $matches[1];

swoją drogą do wielu wielu wyrażeń bardzo przydatna jest konstrukcja (.*?), ale tylko w przypadku, gdy zastosujemy "?", czyli ograniczymy zachłanność i podamy jakiś ciąg, który występuje po tym "byle jakim" np. "/janek szuka (.*?) i nie znalazł/"

taki mały ot ;>

cu

a tak btw. nie wiem po co się taplamy z regexpami - http://pl.php.net/json

:>Kuba Świegot edytował(a) ten post dnia 01.09.08 o godzinie 14:26

konto usunięte

Temat: wyrażenia regularne w php

faktycznie;)

kod działa, dzieki WIELKIE za pomoc :)))
Marcin Laber

Marcin Laber internet
technologies
magician

Temat: wyrażenia regularne w php

Ech. Przemek Wam hinta podrzucił, i nic...
A przecież wystarczyło:

$txt = '{"name":"generala-henryka-dabrowskiego-","Status":{"code":200,"request":"geocode"},"Placemark":[{"id":"p1","address":"Generała Henryka Dąbrowskiego, Rumia, Polska","AddressDetails":{"Country":{"CountryNameCode":"PL","CountryName":"Polska","AdministrativeArea":{"AdministrativeAreaName":"Pomorskie","SubAdministrativeArea":{"SubAdministrativeAreaName":"Wejherowski","Locality":{"LocalityName":"Rumia","Thoroughfare":{"ThoroughfareName":"Generała Henryka Dąbrowskiego"}}}}},"Accuracy": 6},"Point":{"coordinates":[18.406852,54.564917,0]}}]}';
$dane = json_decode($txt);
print_r($dane);
Marcin Laber edytował(a) ten post dnia 01.09.08 o godzinie 17:01

konto usunięte

Temat: wyrażenia regularne w php

też o tym nadałem, ale przecież topic to WYRAŻENIA REGULARNE, więc domniemam że autorowi chodziło o wyrażenia :)

pzdr

konto usunięte

Temat: wyrażenia regularne w php

dokładnie - chciałem to obrabiać wyrażeniami :))



Wyślij zaproszenie do