4Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
256
256
EMPFEHLEN
-
25.01.12 08:24 #1
- Registriert seit
- Nov 2007
- Beiträge
- 255
Hallo ihr,
ich habe einen Test der ca. so aussieht!
Jetzt möchte ich das span rauslöschen und abändern bzw. was hinzufügen!PHP-Code:$text = "Das ist ein <span id='123' class='klasse' text='beschreibung zu diesen textteil'>1</span> bestimmter text!";
Der fertige Text soll dann so aussehen!
mithilfe vom Internetz hab ich schonmal das span gelöscht! Aber so richtig hilft das mir auch nicht weiter!PHP-Code:$text = "Das ist ein <SUP><span id='".$z."' class='andereklasse' text='beschreibung zu diesen textteil'>1</span></SUP> bestimmter text!";
So kann ich zwar auch was davor und dahinter einfügen, aber das gleiche bringt mich nicht ganz zum Ergebnis!PHP-Code:preg_replace('#<(/*)span[^>]*>#msi', '?', $str);
Danke jetzt schon für eure Hilfe
-> was ich auch auch interessatn fände, wie lösche ich ein attribut? z.B. die ID****?Geändert von JesusFreak777 (25.01.12 um 08:51 Uhr)
-
item: Die ID löschen? Du willst ja eh den ganezn span-Tag ersetzen. Dann lass die ID einfach weg
item: In deinem Beispiel änderst du nur die ID und die class. Willst du jetzt den ganzen span-Tag ersetzn oder nur diese 2 Argumente?
Annahme: Du willst nur die class und die id ersetzen
PHP-Code:$pattern = '/(<span id=)'[[:digit:]]+'( class=)'[[:alnum:]]+'( [^>]+>)/isU';
$replace = "\1'{$z}'\2'alpha'";
$result = preg_replace($pattern, $replace, $subject);
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
25.01.12 09:42 #3
- Registriert seit
- Nov 2007
- Beiträge
- 255
Hallo,
ich versteh das mit den [] nicht ganz...
syntax error, unexpected '['
-> da muss ich bestimmt was ersetzen/ergänzen!?
Ich hab noch nen 2. Problemfall wo es ähnlich aufgebaut ist (deshalb kein neues Thema), nur dort müssen einzelne Attribute gelöscht werden!
Dort steht dann im span noch ein name und eine id die mich stören! Wie kann ich diese Löschen!
In diesen Fall muss jetzt erstmal nur die ID und die class geändert werden!
Vielen Dank!
-
Sorry, mein Fehler (C&P ist schuld). In einem String der mit ' begrenzt ist, müssten ' im String escapt werden oder der String in " fassen.
[] Ist ein Klammer um zu sagen es sind alle in der Klammer aufgeführten Zeichen gültig.PHP-Code:$pattern = "/(<span id=)'[[:digit:]]+'( class=)'[[:alnum:]]+'( [^>]+>)/isU";
[1-3] heisst, es ist 1,2 und 3 gültig
[:digit:] entspricht 0-9
[:alnum:] entspricht a-zA-Z0-9---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
-
25.01.12 12:25 #6
- Registriert seit
- Nov 2007
- Beiträge
- 255
Hallo,
tut mir leid, ich stell mich etwas dumm an :/ ...
hier mal mein Quählcode:
es kann vorkommen das es im span zu verschiebungen kommt (habe ich leider erst jetzt festgestellt -> also das erst ID dann TEXT kommt, wann anders erst TEXT dann ID...)PHP-Code:$str = 'Irgendein geheimer text <span text="mit einem verweis" class="footnote" id="b26ref40001008footnote3">3</span>. und noch mehr text<span text="und noch nen verweis" class="footnote" id="b26ref40001008footnote4">4</span> noch a bissle!';
echo $str;
echo "<br/>";
echo htmlentities($str);
echo "<br/>";
echo "--------------------------------";
echo "<br/>";
$z = 123;
$pattern = "/(<span id=)'[[:alnum:]]+'( class=)'[[:alnum:]]+'( [^>]+>)/isU";
$replace = "\1'{$z}'\2'alpha'";
$result = preg_replace($pattern, $replace, $str);
echo htmlentities($result);
-> Momentan entspricht mein Ergebniss noch dem Ausgangszustand.... Warum?
-
26.01.12 09:29 #7
- Registriert seit
- Nov 2007
- Beiträge
- 255
hat keiner ne idee für mich?
Habe gesehen das es für Javascript ne lösung gibt!
http://de.selfhtml.org/javascript/ob...move_attribute
Das ist aber Clientseitig und ich brauch das Serverseitig!
Die class kann ich mit nen normalen replace ersetzten, die ist immer gleich! Aber die ID ist unterschiedlich lang (einfach undefiniert) -> am liebsten wäre es mir diese zu entfernen da ich keinen verwendungszweck habe!
-
Die ID könntest Du so rausfiltern:
GrußPHP-Code:$data = preg_replace( '#<span(.*?) id=(["|\']{1})(.*?)\\2(.*?)>#msi', '<span\\1\\4>', $data );
EDIT//
So ist es evtl. sogar noch etwas genauer:
PHP-Code:$data = preg_replace( '#<span(.*?)([ ]+id=(["|\']{1})(.*?)\\3)(.*?)>#msi', '<span\\1\\5>', $data );
Geändert von Raisch (26.01.12 um 12:13 Uhr)
Ähnliche Themen
-
Tutorials mit Wink erstellen, anderes Format?
Von sk91 im Forum Videoschnitt, Videotechnik & -produktionAntworten: 1Letzter Beitrag: 26.05.10, 17:53 -
Doppelte Einträge im löschen/in anderes array verschieben
Von BastianW im Forum PHPAntworten: 4Letzter Beitrag: 03.03.09, 20:41 -
Erstellen und Löschen von Dateien
Von 2Pac im Forum PHPAntworten: 13Letzter Beitrag: 26.01.09, 19:57 -
textfeld erstellen, wenn anderes angeklickt
Von darkangel1208 im Forum Javascript & AjaxAntworten: 0Letzter Beitrag: 27.11.07, 01:25 -
sharedobject attribut erstellen löschen wieder erstellen(prob)
Von Umut1983 im Forum Flash PlattformAntworten: 5Letzter Beitrag: 01.07.07, 14:25





Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren