Blaubart: ersetze Zeichen zwischen zwei Zeichen?

Beitrag lesen

Hallo Manfred.

auch wenn ich RegEx nicht kann, ist es doch das bessere oder?

Besser? Nein, finde ich nicht. Du wirst mit Regular Expressions sogar einigen Aufwand mehr haben als mit den anderen hier vorgestellten Methoden. Du möchtest eine verschachtelte Struktur analysieren, und dafür sind Regular Expressions ohne weitere "Hilfsoperationen" ziemlich ungeeignet.

Ich würd schon ganz gerne die "elegantere" Methode verwenden.

Eddis Methode ist die Kurzversion eines CVS-Parsers, der von Komma zu Komma scannt und nach dem Einlesen eines Anführungszeichens als erstem Wert alle Folgezeichen (auch Kommata!) bis zum nächsten Anführungszeichen liest. Den kannst du dir natürlich auch selber schreiben.

Was genau verstehst du aber unter "elegant"? Eddis Skript erledigt deine Aufgabe in zweieinhalb Zeilen -- Replace und Implode sind ja überflüssig, wenn du die Werte wirklich nur extrahieren und dann anderweitig weiterverarbeiten möchtest. Vielleicht nicht das, was du unter elegant verstehst, aber zumindest sehr _kurz_. ;-) Funktioniert allerdings auch nur, wenn tatsächlich _alle_ Werte in Anführungszeichen stehen.