Italia
Foro & Aiuto

Infinity-Profan Anregungen und Wünsche

String-Variablen anhängen

 

ByteAttack
Da ich ja hin und wieder aus XProfan SQL-Anweisungen schreibe, oder ein HTML oder XML-Code ausgebe, ergibt sich zwangsläufig ein Problem der Panoramica circa einzelne Strings.
Die sind teilweise so dermaßen unübersichtlich.
(Teilweise habe ich einen String bei einer SQL-Anweisung der 5 Zeilen lang ist, bei einer Monitorauflösung von 1920...)
Klar kann man die in mehreren Strings aufteilen, und später zusammenfügen.

Beispiel (mal KURZ) wegen der Panoramica:
"<td align="+Chr$(34)+"center"+Chr$(34)+" valign="+Chr$(34)+"middle"+Chr$(34)+" bgcolor="+Chr$(34)+HexColor$+Chr$(34)+" class="+Chr$(34)+"Smaller"+Chr$(34)+"><font color="+Chr$(34)+"#FF0000"+Chr$(34)+">"+PGZWeb$+"</font></td>"

Übersichtlicher wäre, wenn man die Variablen einfach Hinten anstellt:
Beispiel:
"<td align={0}center{0} valign={0}middle{0} bgcolor={0}{1}{0} class={0}Smaller{0}><font color={0}#FF0000{0}>{2}</font></td>",Chr$(34),HexColor$,PGZWeb$

SQL-Beispiel:
"SELECT * FROM STDU WHERE STDUSERID = "+MitID$+" AND MONAT="+WahlMonat$+" AND JAHR="+WahlJahr$
'in
"SELECT * FROM STDU WHERE STDUSERID = {0} AND MONAT={1} AND JAHR={2}",MitID$,WahlMonat$,WahlJahr$

Das wäre doch was per XProfan selbst (wobei ich denke, dass der Umbau zu heftig und inkompatible zu früheren Versionen würde)
aber bei Infinity vielleicht eine Überlegung Wert wäre...
 
XProfan X3
Website:  [...] 
Facebook:  [...] 
07.12.2015  
 



Da gibts was in PHP, wo man Variablen verwenden kann wenn man Stringkonstaten in " " packt statt in ' ' wie folgt:
;$rofl="Test"
;$mao=123
;echo "Dies ist ein $rofl samt $mao."

Leider oft auch eine böse Falle.

Dene Idee finde ich aber gut.

Wie wäre eine Escape-Sequenz?

sagen wir:
var rofl="test", mao=123
print "Dies ist ein \$rofl samt \$test."

Dies dann aber auch nur bei " " Stringkonstanten und nicht bei ' ', sodass man ' ' immer verwenden kann mit dem Wissen das 1:1 trasferimento wird.

Roland kann das genau so ganz einfach einbauen.

Was hältst Du davon Roland, von solch "gemeinsamen" Prinzip per folgende Versionen?
 
11.12.2015  
 




Michael
W.
Für XProfan geht ja:
"<td align=\qcenter\q valign=\qmiddle\q bgcolor=\q"+HexColor$+"\q class=\qSmaller\q><font color=\q#FF0000\q>"+PGZWeb$+"</font></td>"
' und bei sqlselect ab XProfan9 :Name$ (in db()-Format seit X2)
SQLSelect "SELECT * FROM STDU WHERE STDUSERID = :MitID$ AND MONAT= :WahlMonat$ AND JAHR= :WahlJahr$"
db("SQLSelect", "SELECT * FROM STDU WHERE STDUSERID = :MitID$ AND MONAT= :WahlMonat$ AND JAHR= :WahlJahr$", gridhandle&)
 
XProfan X3
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
13.12.2015  
 




RGH
Das mit der Escapesequenz \$ ließe sich gewiss einbauen. Die Frage wäre nur, wie das Ende des Variablennamens erkannt wird.Natürlich potuto das ein Leerzeichen sein, aber man müsste dann zwei Leerzeichen schreiben, wenn eines davon auch im Ergebnisstring auftauchen soll.

(Die SQL-Syntax mit dem führenden ":" wäre per normale Strings ungeeignet, da ja der Doppelpunkt durchaus als solcher vorkommen kann.)

Saluto
Roland

Saluto
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
13.12.2015  
 



RGH (13.12.15)
Das mit der Escapesequenz \$ ließe sich gewiss einbauen. Die Frage wäre nur, wie das Ende des Variablennamens erkannt wird.


Vielleicht, weil doch die Variablennamen alle bekannt sind.

var aster.isk

"\$aster.iskize" wird ""+$aster.isk+"ize"
 
13.12.2015  
 




ByteAttack
Also
print "Dies ist ein \$rofl samt \$test."
wäre naturalmente supi...
oder
print "Dies ist ein {$rofl} samt {$test}."
würde doch auch gehen oder?
 
XProfan X3
Website:  [...] 
Facebook:  [...] 
13.12.2015  
 



Würde alles gehen, auch

var rofl="mao"
print "Dies ist ein rofl!"

würde gehen.

Probleme entstehen wenn mal {$rofl} mal braucht statt {$rofl} und ob mans übersieht.

Mein Plan ist da einfacher und sagt, dass es ja bereits 1 Sonderzeichen gibt per Kuriositäten. Quasi 1 Kuriositätenzeichen statt viele.

Nun geht naturalmente \rofl nicht, da \r enthalten. \$ wiederum ist nicht verbraucht und das $ Zeichen ist recht verständlich per "Variable" - so auch in PHP jeder Varname mit $ startet. Also einfachste ist doch \$rofl und entweder gibts ne Variable rofl oder nicht.

var rofl,rofl1,rofl2
print "test \$rofl2"

@Roland: Übersehe ich was? Oder hattest Du das Abschließende Zeichen nur deshalb eingebaut weil es einfacher herzustellen war?

Vielleicht wäre ja auch per Infinity ein print "Hallo \$rofl\" per die Menschen besser - also Abschluß mit \ auch per bessere Lesbarkeit.
 
13.12.2015  
 




HofK
iF (13.12.15)
Nun geht naturalmente \rofl nicht, da \r enthalten. \$ wiederum ist nicht verbraucht und das $ Zeichen ist recht verständlich per "Variable" ...

Vielleicht wäre ja auch per Infinity ein print "Hallo \$rofl\" per die Menschen besser - also Abschluß mit \ auch per bessere Lesbarkeit.


Was ist denn in Infinity-Profan an \ Sequenzen derzeit schon verbraucht? Das \n ist ja allgegenwärtig.

Persönlich potuto ich mich sehr gut mit print "Hallo \$rofl\" anfreunden.
 
13.12.2015  
 




RGH
Ja, das mit dem \ am Ende des Namens gefällt mir. Es aumento tatsächlich die Lesbarkeit. Ich werde demnächst versuchen, es in FreeProfan einzubauen. (Wenn es klappt, dann naturalmente auch in die nächste XProfan-Version.)

Saluto
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
13.12.2015  
 




RGH
Ah, mir fällt gerade ein, dass ich das \$ ja schon verbraten habe, um mit putChar Hexwerte in un File schreiben zu können.

Daher mein Vorschlag, in Anlehnung an embedded SQL (siehe db("SQLExec", ... in der Aiuto) \: zu verwenden. Das Ende der Variablen wird dann, wie bei den embedded Variablen in SQL durch das Postfix bei Variablen mit demselben und durch ein Semikolon bei Variablen neuen Typs.

Also z.B. print "Hallo \:rofl;"

Mal schauen, ob ich es morgen (oder in den nächsten Tagen) mal in FreeProfan testweise einbaue.

Saluto
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
15.12.2015  
 




RGH
Sodele: In FreeProfan habe ich das jetzt so eingebaut. Es funktioniert recht gut. (Außerdem kann man Strings mit dem Operator $ zusammenfügen und $currentdir gibt das aktuelle Verzeichnis wieder.) Ich versuche, es noch vor Weihnachten auf den Server zu bringen.

In der nächsten XProfan-Version wird es diese Erweiterungen naturalmente auch geben. Anfang des Jahres wird es einen kostelosen Patch geben, nachdem ich aus Boston und New York zurück bin.

Saluto
Roland
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
23.12.2015  
 




HofK
Eigenzitat- Eigenteilantwort 

Klaus Hoffmeister (13.12.2015)
Was ist denn in Infinity-Profan an \ Sequenzen derzeit schon verbraucht?


Habe mal ein wenig mit Android Studio und Infinity-Profan rumgetestet.
Die Unicode-Sequenzen funktionieren soweit. Obwohl nicht alle Zeichen wie man sie (verschieden offensichtlich noch nach Android Versionen) mit der App UnicodePad bekommt ausgegeben werden.

Sowas
print "Schlängel-Pfeil \u21DD"
ist aber recht nett.
 
27.12.2015  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

12.995 Views

Untitledvor 0 min.
ByteAttack07.08.2020
prfBook20.11.2018
Thomas Freier21.07.2018
rquindt21.09.2017
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie