AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Variablen in Stringliteral inlinen

Ein Thema von QuickAndDirty · begonnen am 5. Feb 2020 · letzter Beitrag vom 11. Feb 2020
Antwort Antwort
Seite 2 von 4     12 34   
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.871 Beiträge
 
Delphi 12 Athens
 
#11

AW: Variablen in Stringliteral inlinen

  Alt 5. Feb 2020, 21:01
War sowas nicht in php oder awk?
Es ist in PHP und in Perl so!

Code:
$Mark = 3;
$Pfennig = 40;
$Variable1 = "Das sind $Mark Mark und $Pfennig Pfennig";
In Javascript wird es so gemacht
Code:
var a = '5';
var b = '10';
console.log(`Das sind ${Mark} Mark und ${Pfennig} Pfennig`);
Die Akzente sind außerdem Multiline-String-Literale in Javascrip!

Ich dachte wirklich wir haben das auch...Aber ist wohl alzheimer
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.871 Beiträge
 
Delphi 12 Athens
 
#12

AW: Variablen in Stringliteral inlinen

  Alt 5. Feb 2020, 21:03
Nein, es gibt keine String interpolation mit Variablennamen in Delphi. Nur die von Format akzeptierten Platzhalter.
Menno sogar Swift hat das!
Es wäre so gut wenn die das einbauen.
Cotlin, Dart, Swift und C# 6.0 alle haben es

C#
Code:
// C# 6.0
var apples = 4;
var bananas = 3;
Console.WriteLine($"I have {apples} apples");
Console.WriteLine($"I have {apples + bananas} fruit");
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 5. Feb 2020 um 21:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.006 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#13

AW: Variablen in Stringliteral inlinen

  Alt 6. Feb 2020, 00:38
Im Hinblick auf Lokalisierung (resourcestrings) ist das gar nicht mehr so toll, wie es zuerst erscheinen mag. Denn man kann string Interpolation nur dort nutzen, wo auch die im String referenzierten Symbole zugänglich sind. Und in aller Regel hat man dort, wo resourcestrings deklariert werden keinen Zugriff auf diverse Variablen oder Properties.

Es gibt auch Entwickler, die String Interpolation sogar für schlecht halten.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie ( 6. Feb 2020 um 00:42 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.871 Beiträge
 
Delphi 12 Athens
 
#14

AW: Variablen in Stringliteral inlinen

  Alt 6. Feb 2020, 12:33
Nun Ich generiere delphi code für eine include datei...jetzt mit format('Bla%d blabla%s '[x,y])
Glaube mir die Ausgabe mit string interpolation hätte den Quellcode in den strings sicher leichter manipulierbar und umstellbar gemacht.
Ich sage ja nicht das es der Heilige Gral ist, frei von jedwedem Nachteil.

Dennoch hätte Stringinterpolation mir bei der Aufgabe echt was gebracht(leichte Umstellbarkeit des Codes in den Strings)
Das andere Übel ist die häßliche art und weise wie Einzelhochkomma escaped werden....
Sowohl QuotedString('TADA') als auch ''''''''''''''''''' sind keine sehr befriedigende Art sowas zu machen.
Auch ein Multiline String literal wäre schon schön für diese Aufgabe gewesen.

Ich möchte dazu sagen, fasst das bitte nicht als nörgeln auf. Ich habe alles was ich hinbekommen wollte mit Delphi hinbekommen...
Es geht mir eher um nicetohaves.
JA, ich will von Embarcadero verwöhnt werden. ^^
Zumindest würde es mich freuen
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 6. Feb 2020 um 12:38 Uhr)
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.376 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: Variablen in Stringliteral inlinen

  Alt 6. Feb 2020, 13:51
Menno sogar Swift hat das!
Es wäre so gut wenn die das einbauen.
Cotlin, Dart, Swift und C# 6.0 alle haben es
Es wäre schlecht wenn die das einbauen. Das verleitet zu QuickAndDirty-Code

(Bei uns wurde eh solcher Code von der Person, die für Übersetzungen zuständig ist, verboten.)
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
479 Beiträge
 
Delphi 11 Alexandria
 
#16

AW: Variablen in Stringliteral inlinen

  Alt 6. Feb 2020, 15:51
Könntest dir nen IDE-Plugin dafür bauen, das das im Editor mit nem Rechtsklick oder so parst. Aber ansonsten sehe ich da nicht viel Möglichkeit.
Was jedoch ginge, wäre so etwas für Klassenfelder zu machen, da diese über die RTTI abrufbar sind. Globale oder lokale Variablen/Konstanten allerdings wirst du so nicht verarbeiten können.
Dennis
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.765 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Variablen in Stringliteral inlinen

  Alt 6. Feb 2020, 20:33
Menno sogar Swift hat das!
Es wäre so gut wenn die das einbauen.
Cotlin, Dart, Swift und C# 6.0 alle haben es
Es wäre schlecht wenn die das einbauen. Das verleitet zu QuickAndDirty-Code

(Bei uns wurde eh solcher Code von der Person, die für Übersetzungen zuständig ist, verboten.)
Denke ich auch und man müsste sowas evtl. auch öfters mal "escapen"
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.376 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: Variablen in Stringliteral inlinen

  Alt 7. Feb 2020, 11:33
Hm, mir kommt gerade eh der Gedanke, dass Texte eigentlich gar nicht in Code gehören.
Bei uns gibt es allenfalls Texte auf englisch die bei Exceptions erscheinen, die der Anweder eh nicht sehen sollte.
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
479 Beiträge
 
Delphi 11 Alexandria
 
#19

AW: Variablen in Stringliteral inlinen

  Alt 7. Feb 2020, 11:43
Hm, mir kommt gerade eh der Gedanke, dass Texte eigentlich gar nicht in Code gehören.
Bei uns gibt es allenfalls Texte auf englisch die bei Exceptions erscheinen, die der Anweder eh nicht sehen sollte.
Davon mal ganz abgesehen
Dennis
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.926 Beiträge
 
Delphi 12 Athens
 
#20

AW: Variablen in Stringliteral inlinen

  Alt 7. Feb 2020, 12:34
Hm, mir kommt gerade eh der Gedanke, dass Texte eigentlich gar nicht in Code gehören.
Umgekehrt gehört Code (hier Variablennamen) auch nicht in String-Literale.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz