Moin!
Ich habe einen x-beliebigen String aus dem ich intelligent nicht geschlossene Anführungszeichen entfernen will - sprich:
jedes Vorkommen von ' "' dem nicht irgendwo ein '" ' folgt und jedes '" ' dem nicht ein ' "' vorangegangen ist.
Zerteile deinen String an jedem Vorkommen von ' "'. explode()
In jedem Einzelteil außer dem ersten muss dann '" ' vorkommen, damit das erste Anführungszeichen erlaubt ist. Falls nein, setze den String mit seinem Vorgänger zusammen.
Setze dann das Array wieder mit ' "' zusammen.
Dasselbe umgekehrt nochmal mit '" ' - die Ausnahme ist hierbei dann der letzte Stringteil.
Die Sonderbehandlung für Anführungszeichen direkt am Stringanfang oder am Stringende wäre auch noch zu beachten.
Reguläre Ausdrücke sind da ein ziemlicher Irrweg.
- Sven Rautenberg