Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
Das glaube ich erst, wenn es soweit ist.
Das mit den Delimitern (oder sind es reg. Ausdrücke) habe ich noch gar nicht geblickt.
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
22.12.2009, 15:43
(Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2009, 15:44 von frostschutz.)
Ja, okay, ist klar.
falsch:
PHP-Code:
'#'.preg_quote("$irgendwas").'#'
richtig:
PHP-Code:
'#'.preg_quote("$irgendwas", '#').'#'
Ansonsten wird das Zeichen # in $irgendwas nicht gequoted, und dann knallts wenn in $irgendwas ein # vorkommt, z.B. bei <a href="#top">, und führt zur Fehlermeldung unknown modifier t, da das pattern dann als #$irgendwas<a href="#t verstanden wird.
Bei deiner Beispiel-RAR hast das preg_quote zudem ganz rausgeworfen, das muss natürlich wieder rein, wie beim activate auch.
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
Klasse, es funktioniert! Dankeschön, frostschutz!
Den Gartenzaun hatte ich auch schon mal im Visier, weil er ja auch als reg. Ausdruck dient. Aber diese Schreibweise in der pre_quote-Fkt. war mir völlig unbekannt.
Danke nochmal!
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
Vielleicht doch noch eine Frage:
könnt Ihr eine oder mehrere Seiten empfehlen, die sich mit dem Thema Modifier, Delimiter oder reg. Ausdrücke beschäftigen? Ich würde das gerne besser verstehen, wie man in PHP bzw. mit find_replace_templatesets nach bestimmten Strings suchen kann.
In verschiedenen Plugins werden solche Suchausdrücke zuweilen in rauhen Mengen benutzt, nur sagt mir das alles nichts.
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Das sind reguläre Ausdrücke, die sie bei den meisten Programmiersprachen benutzt werden. Vielleicht findest du eine gute Anleitung dafür... Ich habe noch keine gesehen.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
23.12.2009, 11:08
(Dieser Beitrag wurde zuletzt bearbeitet: 23.12.2009, 11:09 von frostschutz.)
Gibt zwei Möglichkeiten reguläre Ausdrücke zu lernen:
1) Ausprobieren und gucken was rauskommt
2) Perl lernen. Das was die anderen Programmiersprachen benutzen kommt auch nur von Perl (PCRE steht für Perl Compatible Regular Expressions)
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
zu 1: bislang kommt bei meinen Versuchen gar nichts dabei raus.
zu 2: ohje
und da gibt es keine andere Alternative?
Die regulären Ausdrücke, die in MyCodes verwendet werden, sind wahrscheinlich die selben, wie sie dann auch bei "find_replace_templatesets" angewendet werden, oder?
Danke Euch beiden!
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Ja, genau.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
23.12.2009, 12:35
(Dieser Beitrag wurde zuletzt bearbeitet: 23.12.2009, 13:40 von doylecc.)
(22.12.2009, 22:54)Jockl schrieb: Vielleicht doch noch eine Frage:
könnt Ihr eine oder mehrere Seiten empfehlen, die sich mit dem Thema Modifier, Delimiter oder reg. Ausdrücke beschäftigen? Ich würde das gerne besser verstehen, wie man in PHP bzw. mit find_replace_templatesets nach bestimmten Strings suchen kann.
Hallo Jockl,
du kannst ja mal gucken, ob du auf der Seite brauchbare Infos findest:
http://regexp-evaluator.de/tutorial/
Beiträge: 9.560
Themen: 197
Registriert seit: 27.12.2007
MyBB-Version: 1.8
Hallo waldo,
vielen Dank für den Link. Habe mir das mit großem Interesse durch gelesen.
Allerdings bleiben ein paar Fragen offen und ich hoffe, Ihr könnt mir evtl. noch weiterhelfen.
Bin mittlerweile schon ein paar deutliche Schritte weiter gekommen, hänge jedoch nun an einem Problem, bei dem mir sicher die reg. Ausdrücke helfen können, nur der richtige Einsatz ist mir immer noch nicht klar.
Ich habe in einem Template größere Änderung vor. Das Aktivieren klappt soweit, nur beim Deaktivieren komme ich ins Schleudern. Ich suche z.B. nach
Code:
<div class="float_left">
</div>
und möchte zwischen diese beiden Tags einen Code einfügen. 2 Probleme:
- ich weiß nicht, wie viel Zeilenumbrüche oder Tabs dazwischen liegen. Ich habe schon versucht, zwischen die beiden Tags einen Suchausdruck einzufügen, aber das klappte irgendwie nicht
- Des weiteren gibt es diese Kombination 3-mal, ändern möchte ich aber nur 2 davon.
Würde mich über weitere Unterstützung freuen!