Autor Zpráva
reg
Profil *
Ahoj, tento reg. výraz nahrazuje v textu čísla 01,02,03 atd. za 1,2,3 atd.
preg_replace('#0+([1-9])#', '$1', $text');

Můžete mi někdo vysvětlit jak funguje? Zvlášť co dělá $1. Snažil jsem se hledat, ale asi špatně. Díky
Joker
Profil
reg:
Zvlášť co dělá $1.
$1 znamená "to, co v hledaném řetězci odpovídalo první závorce v regulárním výrazu". Čili:
#0+([1-9])#
- vyhovuje-li vstup regulárnímu výrazu, tak $1 bude ta část vstupu, která se ztotožnila s označenou částí toho výrazu.
Samozřejmě v reguláru může být více závorek a potom $2 bude odpovídat obsahu druhé závorky, $3 třetí, atd.

Tj. co říká ten preg_replace:
Jednu nebo více nul následovaných (1-9) nahraď tím, co ve vstupním řetězci odpovídá té závorce z výrazu.

edit: trochu jsem to upřesnil.
reg
Profil *
Joker:
Díky moc

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0