Autor | Zpráva | ||
---|---|---|---|
Jcas Profil * |
#1 · Zasláno: 6. 12. 2010, 06:38:21
$text = preg_replace("/\[(\/?)url(=)?([^\]]*)?\]/", "<\\1a href=\"\\3\">", $_POST['vyraz']); Ono to funguje, ale: Je to takhle správně? Nechápu, (nemůžu najít vysvětlení), nevím proč musí být vzor uzavřen do /...../ ? Nechápu, jaktože se v uzavíracím tagu neobjeví href, nebo aspoň jedny uvozovky. Chápu, že když není \\2, nebo\\3 ve vzoru, tak není co nahrazovat, ale JAK ON VÍ, že ( href=") se kompletně vztahuje k sekvenci \\2 ? A JAK ON VÍ, že uvozovky před uzavíracím tagem se doplní pouze, je-li zadána sekvence \\3 ? Stejně tak nechápu, proč třeba url nenahradí za a h ? ps. Prostě regulární výrazy asi nikdy nepochopím. |
||
ShiraNai7 Profil |
#2 · Zasláno: 6. 12. 2010, 11:05:17
Jcas:
„Nechápu, (nemůžu najít vysvětlení), nevím proč musí být vzor uzavřen do /...../ ?“ Protože regulární výraz může mít uvedeny za samotným výrazem volitelné modifikátory (viz PHP dokumentace). > Ono to funguje, ale: > Je to takhle správně? Neřekl bych.. dává to href="" i na uzavírací tag.. takže toto: $test = "test test"; echo preg_replace("/\[(\/?)url(=)?([^\]]*)?\]/", "<\\1a href=\"\\3\">", $test); Vypíše toto: test <a href="http://google.com/">test</a href=""> |
||
Pavel Dumbrovský Profil |
#3 · Zasláno: 6. 12. 2010, 11:13:07
Zdravím,
využil bych situace a zeptal se - která funkce se nejvíce doporučuje požívat v kombinaci s reguláry? ereg, eregi, preg_replace,... ? Děkuji. |
||
__construct Profil |
#4 · Zasláno: 6. 12. 2010, 12:56:03 · Upravil/a: __construct
Pavel Dumbrovský:
„využil bych situace a zeptal se“ zneužil… „která funkce se nejvíce doporučuje požívat v kombinaci s reguláry“ ereg_* a eregi sú DEPRECATED (teda zastarané) a v novších verziách PHP budú hlásiť chybu.
|
||
Časová prodleva: 13 let
|
0