Wenn wir schon mal am Erbsenzählen sind:
Die Aufgabe/Anfrage war:
"Es sollen also alle Zeichen, die keine Ziffern sind, herausgenommen werden. Wie kann ich das mit der Formelsprache umsetzen?"
Diese Aufgabe ist, denke ich, bestens gelöst worden.
Die Annahme, dass die "elegant²"
A := @implode( @Explode(dirtyNumber; @implode(@Explode( dirtyNumber ; "0123456789+"))) ; "" );
@Left(A; 1) + @Left(@replacesubstring(A; "+"; "") ; -1);
einen Fehler bei fehlendem + als erstem Zeichen bringt, ist ein Interpretationsfehler, aber tatsächlich ist sie nicht 100%ig, denn bei mehr als einem + am Anfang wird die erste Ziffer nach den + entfernt. Erst @Left und dann @ReplaceSubstring (Reihenfolgeproblem) ist hoffentlich ganz korrekt.
A := @Implode (@Explode (dirtyNumber; @Implode (@Explode (dirtyNumber; "0123456789+"))) ; "" );
@Left(A; 1) + @ReplaceSubstring(@Left(A; -1); "+"; "");
Doch das ist jetzt oberpingelig. Wenn eine Telefonnummer wirklich ganz korrekt angezeigt werden soll (z.B. um damit direkt zu wählen), würde ich das schon bei der Eingabe entsprechend validieren, und nicht erst in einer Ansicht irgendwie geraderechnen. Und das erfolgt ja, entweder technisch oder organisatorisch, wenn ich David richtig verstanden habe.