pomoc s php reg. vyrazy
HackForum

| Mohli byste mi nekdo pomoci, jak mam udelat regularni vyraz.. teda spise reg vyraz uz mam...ale nmuzu donutit funkci preg_replace();, aby mi hodila zpatky to co chci.. zadam preg_replace(vyraz, nahradit, text), a nemuzu prijit na to nahradit. kdyz mma napr IP, aby mi to vratilo tri cisla a ctvrty vynechalo..diky predem (odpovědět) | nejmenujii | 83.240.29.* | 19.12.2006 11:53 |
|
|
|
|
re: pomoc s php reg. vyrazy | # |
| Nějak to nechápu s tím preg_replace(). Co chceš čím nahrazovat?
Pokud chceš vynechat čtvrtou část IP, zkus raději preg_grep(). Nejlíp takhle:
/^\d+\.\d+\.\d+\./ (odpovědět) | guma | 195.113.79.10/10.0.10.* | 19.12.2006 18:47 |
|
|
|
re: pomoc s php reg. vyrazy | # |
| jednotlive casti vyrazu muzes "seskupovat" zavorkama a ty casti si bak vytahnout backreferenci. takhle:
---
$old = "192.168.0.10";
$new = preg_replace('/^(\d+)\.(\d+)\.(\d+)\.(\d+)$ /', '\1.\2.\3.*', $old);
---
$new bude "192.168.0.*" (odpovědět) | kve | 82.208.44.* | 20.12.2006 0:54 |
|
|
|
re: pomoc s php reg. vyrazy | # |
| samozrejme to muze byt i jednodussi:
$new = preg_replace('/^(\d+\.\d+\.\d+\.).*$/', '\1*', $old);
atd. princip je myslim jasny. priste viz. www.php.net. (odpovědět) | kve | 82.208.44.* | 20.12.2006 1:01 |
|
|
|