Domino 9 und frühere Versionen > ND7: Entwicklung

Telefonnummer "entformatieren"

<< < (2/7) > >>

cebolina:

--- Zitat von: Peter Klett am 20.05.10 - 12:45:40 ---Wenn man dann auch noch immer @char(13) ersetzt, bleibt keine Eventualität mehr übrig:
--- Ende Zitat ---

ich widerspreche ungern, aber es bleiben noch " " und @NewLine zu berücksichtigen.

So gehts aber (zumindest in einem berechneten Feld; in Ansicht habe ich nicht probiert):

feldname := Feld1 ;
erlaubt := (" " : "0" : "1" : "2" : "3" : "4" : "5" : "6" : "7" : "8" : "9") ;
verboten := @ReplaceSubstring(feldname ; erlaubt ; @Char(13)) ;
@ReplaceSubstring(feldname ; @Unique(@Explode(verboten ; @Char(13))) : @Char(13) : @NewLine : " " ; "")

Gruß
Stefan

Peter Klett:

--- Zitat von: cebolina am 20.05.10 - 13:16:37 ---ich widerspreche ungern ...

--- Ende Zitat ---
Ich auch, aber  :)

Das Leerzeichen muss nur deshalb entfernt werden, da es in "erlaubt" enthalten ist (also dort, erstes Element, zu entfernen).

@Newline ist normalerweise @Char (13) + @Char (10) (zumindest im Win-Umfeld), wenn man über @Char (13) explodiert, müsste erst @Char (10) und dann @Char (13) ersetzt werden. Falls das generell ein Problem gibt, kann man aber auch irgendein nicht erlaubtes Zeichen als Trennzeichen nehmen.

feldname := Feld1 ;
erlaubt := ("0" : "1" : "2" : "3" : "4" : "5" : "6" : "7" : "8" : "9") ;
trennzeichen = "#";
verboten := @ReplaceSubstring(feldname ; erlaubt ; trennzeichen) ;
@ReplaceSubstring(feldname ; @Unique(@Explode(verboten ; trennzeichen)) : trennzeichen ; "")

Damit sollte das eine allgemeingültige Formel sein, um in einem String bekannte erlaubte Zeichen stehen zu lassen, ohne alle unerlaubten Zeichen zu kennen (hab es aber nicht getestet).

Tim Pistor:
Auch mein Senft dazugeb :

dirtyNumber := "+00++1aaa2s   ss345d" + @NewLine + "dd6  ddd7s8  ss9s0&$s";
cleanNumber := @implode( @Explode(dirtyNumber; @implode(@Explode( dirtyNumber ; "0123456789"))) ; "" );

Thomas Schulte:
Tim bekommt eindeutig den Preis für das Kreativste Denken verliehen.

cebolina:

--- Zitat von: Thomas Schulte am 20.05.10 - 14:04:52 ---Tim bekommt eindeutig den Preis für das Kreativste Denken verliehen.

--- Ende Zitat ---
stimmt, die Lösung von Tim ist wirklich "elegant"!

Gruß
Stefan

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln