Autor | Zpráva | ||
---|---|---|---|
petr Profil * |
Jakto že nefunguje následující kod? Když tam ale dám místo * počet opakování jako + pak už to čísla zobrazí.
Není to divné? <?php $ptn = "/[0-9]*/"; $str = "ddd2558ggg"; preg_match($ptn, $str, $matches); print_r($matches); ?> Výsledek Array ( [0] => ) Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na
![]() |
||
tiso Profil |
#2 · Zasláno: 20. 1. 2010, 20:25:56
petr: pretože tomuto regulárnemu výrazu vyhovuje aj prázdny string. Funkcia preg_match vráti iba prvý výskyt, a ten je pred prvým písmenom v hľadanom stringu. Pokiaľ použiješ preg_match_all získaš výsledok v tvare:
Array ( [0] => Array ( [0] => [1] => [2] => [3] => 2558 [4] => [5] => [6] => [7] => ) ) |
||
petr Profil * |
tiso:
Hmm. Fakt to tak funguje. Kde teda ale vezme ty 3 prázdné řetězce před tím číslem? Moderátor Joker: Smáznul jsem třetí "m" za "Hmm", aby to nepřivolávalo moderátory
|
||
tiso Profil |
#4 · Zasláno: 20. 1. 2010, 21:30:47
petr: [tu]d[tu]d[tu]d[2558]g[tu]g[tu]g[tu]
|
||
Časová prodleva: 13 let
|
0