Autor | Zpráva | ||
---|---|---|---|
Pašák Profil * |
#1 · Zasláno: 25. 11. 2009, 12:55:08
Dobrý den,
chtěl bych poprosit o radu. Mám nějaký dost dlouhý text a v něm chci najít: <variable name="Right">0</variable> a z tohoto řetězce vypsat jen nula, takže vlastně vypast jen text mezu udanými hodnotami. Mohl by mi prosím někdo poradit jak tohoto docílit? Děkuji! |
||
Str4wberry Profil |
#2 · Zasláno: 25. 11. 2009, 13:08:47
Můžeš použít regulární výraz (viz funkci preg_match) nebo využít DOMu.
|
||
Pašák Profil * |
#3 · Zasláno: 25. 11. 2009, 14:03:43
Děkuji, ale nějak to nemohu dát dohromady, můj výsledek je tento:
A to jsem navíc vynechal podmínky že by měl řetězec začínat: <variable name=eee> a končit </variable> $subject="<variable name=eee>1258127433</variable>"; $pattern = '*1258127433*'; preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3); echo $matches; |
||
breeta Profil * |
#4 · Zasláno: 25. 11. 2009, 14:55:01
co takhle?
$text = 'chtěl bych poprosit o radu. Mám nějaký dost dlouhý text a v něm chci najít: <variable name="Right">0</variable> a z tohoto řetězce vypsat jen nula, takže vlastně vypast jen text mezu udanými hodnotami. Mohl by mi prosím někdo poradit jak tohoto docílit? Děkuji!'; $text = str_replace("<variable name=\"Right\">",'',$text); $text = str_replace("</variable>",'',$text); echo $text; |
||
Pašák Profil * |
#5 · Zasláno: 25. 11. 2009, 15:11:16
breeta:
Děkuji, dělá to už téměř to co chci, ale ještě to není přesně ono, teď NECHÁPU PROČ to odebírá všechny variable name=cokoliv, takže mi to hází výpis úplně všech položek jdoucích po sobě bez variable. :) Mě jdejen o to aby to vypsalo variable name=neco_konkretniho a toho nemohu docílit ani úpravou Vašeho kódu. |
||
Joker Profil |
#6 · Zasláno: 25. 11. 2009, 15:33:14
breeta:
To není moc dobrý nápad, viz Pašák - odstraní to <variable name="right"> ...a k tomu všechny </variable> Lepší by byl asi regulární výraz, nějak takhle (nástřel): preg_replace("#<variable name=\"Right\">(.*?)</variable>#", "$1", $text); |
||
Pašák Profil * |
#7 · Zasláno: 25. 11. 2009, 15:38:11
Moc děkuji, pokusím se to dopilovat. :)
|
||
Pašák Profil * |
#8 · Zasláno: 25. 11. 2009, 15:57:20
Ještě prosím jednu radu, proč když mám následující kód v $text a dám vypsat text, objeví se to rovnou bez variable?? Tzn. rovnou mi to z celého vyřeže všechny elementy.
$text = "<variable name=prdka>a</variable>"; echo $text; |
||
breeta Profil * |
#9 · Zasláno: 25. 11. 2009, 16:06:18
co takhle2 :-)
$text = 'chtěl bych poprosit o radu. Mám nějaký dost dlouhý text a v něm chci najít: <variable name="Right">0</variable> a z tohoto řetězce <variable name="Right">152hhhh</variable> vypsat jen nula, takže vlastně vypast jen text mezu udanými hodnotami. Mohl by mi prosím někdo poradit jak tohoto docílit? Děkuji!'; if (preg_match_all ( "/(<variable name=\"Right\">)(.*?)(<\/variable>)/", $text, $vysledeky )) foreach ($vysledeky[0] as &$vysledek ) echo substr($vysledek, 23, -11)."</br>"; |
||
Kajman_ Profil * |
#10 · Zasláno: 25. 11. 2009, 16:06:56
Zkuste si zobrazit zdrojový kód nebo nastavit content-type na text/plain.
|
||
Pašák Profil * |
#11 · Zasláno: 25. 11. 2009, 16:22:45
Moc díky, je to naprosto perfektní až na uřezání všech prvních písmen. :)
|
||
Časová prodleva: 14 let
|
0