Autor | Zpráva | ||
---|---|---|---|
Mufna Profil |
#1 · Zasláno: 8. 12. 2010, 21:55:57
Zdravím Vás. Jak mám vyříznout vše co je mezi tagy <h2> a </h2> v řetězci jako tento ? Obecně chci finálně odstranit všechny HTML tagy, tedy použít funkci strip_tags(), ale nejprve potřebuji odstranit ten nadpis H2, který tam nechci.
<div class="block-1"> <h2><span>Nadpis, který chci odstranit, včetně HTML tagů</span></h2> <p>Text mezi tagy P, chci ho ponechat a zobrazovat</p> <p>Případná další P, taky ponechat a zobrazovat</p> </div> |
||
Keeehi Profil |
#2 · Zasláno: 8. 12. 2010, 22:08:44
Toto by ti mělo pomoct:
preg_match("~<h2>.*?</h2>~",$kde,$nalez); echo strip_tags($nalez[0]); |
||
Mufna Profil |
#3 · Zasláno: 8. 12. 2010, 22:46:33 · Upravil/a: Mufna
Keehi
vyříznutí H2 je OK, ale jak mám dál pracovat s tím, co je mezi tagy <p> ? Nevím, kde mi to zůstalo, když si vypíšu var_dump($nalez), tak je tam ten řetězec mezi H2. Já bych potřeboval i ten zbytek, tedy to co je mezi tagy <p> EDIT: Zkusil jsem na to jít obráceně a použil jsem preg_match("~<p>.*?</p>~",$kde,$nalez); a očekával jsem, že výsledkem bude pole se všemi výskyty odstavců <p>, ale bohužel výsledkem je pouze první odstavec. Šlo by to nějak upravit, aby to našlo všechny odstavce <p> a uložilo je do pole ? |
||
Kcko Profil |
#4 · Zasláno: 8. 12. 2010, 23:05:30
Mufna:
preg_match_all |
||
Mufna Profil |
#5 · Zasláno: 8. 12. 2010, 23:06:00 · Upravil/a: Mufna
Tak díky, myslím, že už jsem našel to co potřebuji, tj. preg_match_all()
EDIT: díky Kcko za snahu, viděl jsem tvoji radu až když jsem to už našel a dopsal svůj příspěvek |
||
Časová prodleva: 13 let
|
0