Hilfe bei regulären Ausdrücken
gondor
- php
0 Gunnar Bittersmann
0 gondor0 Gunnar Bittersmann
0 gondor
0 Tom
Hallo,
wie kann ich mit Hilfe von regulären Ausdrücken (oder auf andere Weise) bestimmte Tags filtern oder abändern.
Links mit einem bestimmten Inhalt:
z.B.
[<a href="eine url">Baum</a>] -> weg
[<a href="eine url">Raum</a>] -> stehen lassen
dann moechte ich die URL bestimmter Links aendern:
z.B.
<a href="anderesforum/nachricht/25663/index.html">Linkname</a>
zu:
<a href="meinforum/forum.html?id=25663">Linkname</a>
Danke fuer Hilfe,
gondor
@@gondor:
nuqneH
wie kann ich mit Hilfe von regulären Ausdrücken (oder auf andere Weise) bestimmte Tags filtern oder abändern.
Was heißt „bestimmte Tags“? Tags? Was haben diese gemeinsam, was unterscheidet sie von denen, die du nicht ändern willst?
dann moechte ich die URL bestimmter Links aendern:
z.B.
<a href="anderesforum/nachricht/25663/index.html">Linkname</a>
zu:
<a href="meinforum/forum.html?id=25663">Linkname</a>
Möchtest du das in PHP tun oder eine <http://de.selfhtml.org/servercgi/server/rewrite.htm@title=serverseitige Weiterleitung>?
Worin besteht dein Problem, nach "anderesforum/nachricht/" gefolgt von einigen Ziffern (die es zu merken gilt) gefolgt von "/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerten zu ersetzen?
Lässt sich dein Problem durch Lektüre von k/π [<http://de.selfhtml.org/perl/sprache/regexpr.htm@title=Reguläre Ausdrücke>] lösen?
Qapla'
Hallo Gunnar,
@@gondor:
nuqneH
wie kann ich mit Hilfe von regulären Ausdrücken (oder auf andere Weise) bestimmte Tags filtern oder abändern.
Was heißt „bestimmte Tags“? Tags? Was haben diese gemeinsam, was unterscheidet sie von denen, die du nicht ändern willst?
mit Tags meinte ich Webelemente, wie <a>...</a> oder <div>...</div>
dann moechte ich die URL bestimmter Links aendern:
z.B.
<a href="anderesforum/nachricht/25663/index.html">Linkname</a>
zu:
<a href="meinforum/forum.html?id=25663">Linkname</a>Möchtest du das in PHP tun oder eine <http://de.selfhtml.org/servercgi/server/rewrite.htm@title=serverseitige Weiterleitung>?
In PHP...
Leider habe ich viele dieser Links (als String):
$in="
...
<a href="anderesforum/nachricht/25663/index.html">Linkname</a>
<a href="anderesforum/nachricht/45233/index.html">Linkname</a>
<a href="anderesforum/nachricht/18976/index.html">Linkname</a>
<a href="anderesforum/nachricht/64894/index.html">Linkname</a>
<a href="anderesforum/nachricht/81247/index.html">Linkname</a>
...
";
zu:
$out="
...
<a href="meinforum/forum.html?id=25663">Linkname</a>
<a href="meinforum/forum.html?id=45233">Linkname</a>
<a href="meinforum/forum.html?id=18976">Linkname</a>
<a href="meinforum/forum.html?id=64894">Linkname</a>
<a href="meinforum/forum.html?id=81247">Linkname</a>
...
";
Worin besteht dein Problem, nach "anderesforum/nachricht/" gefolgt von einigen Ziffern (die es zu merken gilt) gefolgt von "/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerten zu ersetzen?
Die Ansätze. Ich wüßte keinen Weg... zumal ich denke, dass das mit einem regulären Ausdruck (über preg_replace) gehen könnte, aber der Ausdruck des $pattern ist mir zu kompliziert.
Lässt sich dein Problem durch Lektüre von k/π [<http://de.selfhtml.org/perl/sprache/regexpr.htm@title=Reguläre Ausdrücke>] lösen?
Qapla'
Kannst Du mir helfen?
Gruß,
gondor
@@gondor:
nuqneH
Worin besteht dein Problem, nach "anderesforum/nachricht/" gefolgt von einigen Ziffern (die es zu merken gilt) gefolgt von "/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerten zu ersetzen?
Lässt sich dein Problem durch Lektüre von k/π [<http://de.selfhtml.org/perl/sprache/regexpr.htm@title=Reguläre Ausdrücke>] lösen?
Kannst Du mir helfen?
Weil du es bist.
Worin besteht dein Problem, nach "anderesforumhttp://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/nachrichthttp://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/" gefolgt von http://de.selfhtml.org/perl/sprache/regexpr.htm#zeichenketten@title=einigen http://de.selfhtml.org/perl/sprache/regexpr.htm#zeichen@title=Ziffern (die es zu http://de.selfhtml.org/perl/sprache/regexpr.htm#merken@title=merken gilt) gefolgt von "http://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerkten zu ersetzen?
Qapla'
Hallo Gunnar,
@@gondor:
nuqneH
Worin besteht dein Problem, nach "anderesforum/nachricht/" gefolgt von einigen Ziffern (die es zu merken gilt) gefolgt von "/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerten zu ersetzen?
Lässt sich dein Problem durch Lektüre von k/π [<http://de.selfhtml.org/perl/sprache/regexpr.htm@title=Reguläre Ausdrücke>] lösen?
Kannst Du mir helfen?
Weil du es bist.
Worin besteht dein Problem, nach "anderesforumhttp://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/nachrichthttp://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/" gefolgt von http://de.selfhtml.org/perl/sprache/regexpr.htm#zeichenketten@title=einigen http://de.selfhtml.org/perl/sprache/regexpr.htm#zeichen@title=Ziffern (die es zu http://de.selfhtml.org/perl/sprache/regexpr.htm#merken@title=merken gilt) gefolgt von "http://de.selfhtml.org/perl/sprache/regexpr.htm#maskierung@title=/index.html" zu suchen und durch "meinforum/forum.html?id=" + dem Gemerkten zu ersetzen?
Eigentlich immer an dem regulären Ausdruck an sich... also dem Pattern.
Danke für die Linkbeispiele. Ich denke, viel mehr kann ich aus Dir nicht ausquetschen, oder?
Qapla'
Gruß,
gondor
@@gondor:
nuqneH
Ich denke, viel mehr kann ich aus Dir nicht ausquetschen, oder?
Das sollte dir schon reichen. Ein bisschen SELF muss sein.
Andernfalls müsste ich aus dir was rausquetschen: Geld für die Erledigung deines Auftrags.
Qapla'
@@gondor:
nuqneH
Ich denke, viel mehr kann ich aus Dir nicht ausquetschen, oder?
Das sollte dir schon reichen. Ein bisschen SELF muss sein.
Taste mich morgen an die Ausdrücke ran. Wenn ich kein Land sehe, musst Du mir ein wenig Licht ins Dunkle bringen.
Andernfalls müsste ich aus dir was rausquetschen: Geld für die Erledigung deines Auftrags.
... ein Stück weit schon. Aber das Problem ist nur ein kleiner Teil von dem was noch vor mir liegt ;-)
Qapla'
Hello,
Leider habe ich viele dieser Links (als String):
$in="
...
<a href="anderesforum/nachricht/25663/index.html">Linkname</a>
<a href="anderesforum/nachricht/45233/index.html">Linkname</a>
<a href="anderesforum/nachricht/18976/index.html">Linkname</a>
<a href="anderesforum/nachricht/64894/index.html">Linkname</a>
<a href="anderesforum/nachricht/81247/index.html">Linkname</a>
...
";zu:
$out="
...
<a href="meinforum/forum.html?id=25663">Linkname</a>
<a href="meinforum/forum.html?id=45233">Linkname</a>
<a href="meinforum/forum.html?id=18976">Linkname</a>
<a href="meinforum/forum.html?id=64894">Linkname</a>
<a href="meinforum/forum.html?id=81247">Linkname</a>
...
";
wie wäre es mit einem einfachen str_ireplace()?
http://de.php.net/manual/en/function.str-ireplace.php
$out = str_ireplace('href="anderesforum/nachricht/', 'href="meinforum/forum.html?id=', $in);
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg