Diskuze: Výběr cesty obrázku pomocí preg_match_all
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
preg_match_all('/<img src="js\/uploads\/.+"(.+)?( \/)?>/', $this->clanky[$i]["obsah"], $matchs, PREG_PATTERN_ORDER);
No, nevím, jestli to půjde, píši to pozdě a navíc na telefonu, kdyžtak
ti to někdo opraví nebo ti to přepíši.
Jedná se o regulární výrazy.
Do '//' se vkládá výraz. Místo / můžeš použít i např. %. Výraz se
skládá z řetězce, který je přizpůsibený všem situacím. Používáme
zde opakování +, * a {}. Pokud použiješ +, daná část tam musí být
alespoň jednou a poté na počtu nezáleží. U * je to podobné, ale nemusí
ta být vůbec. Pomocí {} si určíš přesný počet opakování. {4, 7}
znamená, že tam musí být min. 4 krát a max. 7 krát. Poté je ještě ?.
Otazník značí 0 nebo 1 opakování (jestli to tam bude nebo ne). Poté máme
možnost použít jakýkoliv znak pomocí . (tečky - žolíku) nebo znaky
určíme pomocí [],do nich vypíšeme znaky. Můžeme použít a-z, A-Z, 0-8,
což značí rozsahy. Také si můžeme tvořit různé podvýrazy pomocí (),
mohou pomoci např. při opakování. Také se na ně nechá odkazovat pomocí
\id, kde id je pořadové číslo závorky. To byl takový rychlokurs, s
regulárními výrazy toho jde spoustu, projdi si internet, jsou tam i české
návody.
Ano, děkuji, hledal jsem ještě lépe a řešení jsem již nalezl i pochopil. Jinak samozřejmě děkuji za odpověď.
Zobrazeno 3 zpráv z 3.