Gibt es neben
Format und
FormatDateTime in Delphi noch andere Möglichkeiten, Platzhalter in Strings (ggf mit Formatierung) durch den Wert von Variablen zu ersetzen?
Zwar bietet
Format mithilfe von Indizes die Möglichkeit, gezielt einen Wert aus dem übergebenen Array anzusprechen, ich suche hingegen nach einer Möglichkeit, die Variablen namentlich zu referenzieren, ähnlich, wie es in diversen Skriptsprachen möglich ist:
Code:
foo= 6;
bar= 9;
myString= "What do you get if you multiply $foo by $bar?";
Idealerweise sollten die Platzhalter ein Typangabe sowie einen Defaultwert (und ggf eine Formatierungsbeschreibung) aufnehmen können, vielleicht etwas in der Art
myString:= AFunc('My number %ANumber:.6d|23 says %AString:s', SomeParams);
oder auch die vollständige Auswertung von Teilausdrücken
myString:= AFunc('The anwswer ist $(6*9+ANumber:Integer|23)', SomeParams);
Ich bin auf der Suche nach einer fertigen und praxiserprobten Lösung. Bittet postet deshalb keinen Vorschlag der Art "nutze
Pos und
Copy" oder "nutze reguläre Ausdrücke". Im Zweifelsfall werde ich letztere verwenden, um etwas ähnliches auf der Basis eines assozativen Arrays von Varianten umzusetzen...
Ich bin gespannt