Das Wissen aller Anwender nutzen

Im Allplan Connect Forum tauschen sich Anwender aus, geben wertvolle Tipps oder beraten sich bei ganz konkreten Aufgabenstellungen − auch international.
Und damit wirklich keine Frage unbeantwortet bleibt, unterstützen die Mitarbeiter des Technischen Supports ebenfalls aktiv das Forum.

Es erwarten Sie:

  • Foren-Vielfalt aus CAD Architektur, CAD Ingenieurbau uvm.
  • Tipps von User für User
  • international: Deutsch, Englisch, Italienisch, Französisch und Tschechisch

Melden Sie sich jetzt an und diskutieren Sie mit!

Zur Registrierung

[Frage] String Zeichen Auslesen [Gelöst]

Schlagworte:
  • String
  • Auslesen
  • Zeichen
  • Stelle
  • Position

Hallo allerseits,
Ich bin etwas am verzweifeln, ich finde irgendwie keinen Befehl bestimmte Positionen von einem String auszuwerten. Also von einem Wort z.b. den 5 und 8 Buchstaben.
In allplan bei Reports und Beschriftungen benutz ich den Befehl dafür sehr häufig. Den gibt es doch bestimmt auch für smartparts, oder? Ja es ist Freitag 23uhr und ich Versuche 2 Buchstaben automatisch herauszulesen.

Besucht mit gerne auf Youtube
Link

Lösung anzeigen Lösung verbergen

Die Rückgabe sind Strings. Also nicht direkt als Zahlwerte zu verwenden. Da müßtest du etwas "Schummeln".

my_string = "1234567890"

substring_laenge = 1

zeichenstelle = 5
fuenftes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT fuenftes_zeichen

n = SPLIT ( fuenftes_zeichen , "%d" , fuenftes_zeichen_als_zahlwert )

zeichenstelle = 8
achtes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT achtes_zeichen

PRINT fuenftes_zeichen + achtes_zeichen

n = SPLIT ( achtes_zeichen , "%d" , achtes_zeichen_als_zahlwert )
PRINT fuenftes_zeichen_als_zahlwert + achtes_zeichen_als_zahlwert

Morgen,

da kommt vermutlich STRSUB ins Spiel.

my_string = "1234567890"

substring_laenge = 1

zeichenstelle = 5
fuenftes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT fuenftes_zeichen

zeichenstelle = 8
achtes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT achtes_zeichen

Die Rückgabe sind Strings. Also nicht direkt als Zahlwerte zu verwenden. Da müßtest du etwas "Schummeln".

my_string = "1234567890"

substring_laenge = 1

zeichenstelle = 5
fuenftes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT fuenftes_zeichen

n = SPLIT ( fuenftes_zeichen , "%d" , fuenftes_zeichen_als_zahlwert )

zeichenstelle = 8
achtes_zeichen = STRSUB ( my_string , zeichenstelle , substring_laenge )
PRINT achtes_zeichen

PRINT fuenftes_zeichen + achtes_zeichen

n = SPLIT ( achtes_zeichen , "%d" , achtes_zeichen_als_zahlwert )
PRINT fuenftes_zeichen_als_zahlwert + achtes_zeichen_als_zahlwert

Ja cool, hat funktioniert. Das ist ja genau das was ich gesucht hab....vielen vielen Dank. Gestern war mein Hirn echt schon sehr matschig darüber

Besucht mit gerne auf Youtube
Link