Cheatah: str_replace einzeilig

Beitrag lesen

Hi,

Das str_replace exakt arbeitet ist mir klar, doch eigentlich ist ja auch der zu Ersetzende Term exakt definiert (wären da eben nicht die neuen Zeilen).

nein, er ist höchst unexakt definiert. Exakt wäre, wenn jedes einzelne Bit von vornherein bekannt ist. Hier weißt Du aber nicht nur nicht, ob ein Umbruch stattfindet oder ein Leerzeichen benutzt wird; Du weißt zudem nicht, aus welchen Zeichen der Umbruch besteht, oder wie viele Leerzeichen es sind, ob vor dem Umbruch noch Leerzeichen stehen, ob Tabulatoren benutzt werden und so weiter. Du hast ein Muster, keinen Vergleichs-String - und Muster schreien nach Regular Expressions.

Die einzige Alternative die ich kenne wäre
preg_replace("!<gnargh(.*?)stlye:normal>!s", "", $output). Aber das ist ja dann nicht mehr unbedingt exakt der Term den ich suche.

Was gut ist, da Du ja nicht exakt den Term suchen willst.

Es geht mir tatsächlich nur um die Problematik, dass zu suchende Strings in verschiedenen Zeilen stehen und so für mich nichtmehr auffindbar sind.

Es geht Dir um die Problematik, dass *ähnliche* Strings mit bestimmbaren Unterschieden gleichermaßen gefunden werden sollen, ohne jede denkbare Kombination explizit nennen zu müssen. Dazu sind Regular Expressions geboren worden.

Cheatah

--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes