vergleichen von Stringvariablen
Moderator: Co-Administratoren
vergleichen von Stringvariablen
Hallo,
ein Hilferuf: ich möchte aus einer Stringvariablen zwei durch Semikolon getrennte Werte isolieren, diese je einer Systemvariablen zuordnen und aus dem Vergleich eine Aktion ableiten.
Bis zum "if" funktioniert das Beispiel, aber dann...
Kann mir jemand mit der richtigen Syntax weiterhelfen?
Beispiel:
integer a = 5;
integer b = 2;
var c = (a # ";" # b).ToString(0);
WriteLine(c);
a = c.StrValueByIndex(";", 0).ToString(0);
b = c.StrValueByIndex(";", 1).ToString(0);
WriteLine("a=" # a);
WriteLine("b=" # b);
if (a<c) {var d = "ja";}
WriteLine(d);
Vielen Dank schon mal für Profihilfe.
ein Hilferuf: ich möchte aus einer Stringvariablen zwei durch Semikolon getrennte Werte isolieren, diese je einer Systemvariablen zuordnen und aus dem Vergleich eine Aktion ableiten.
Bis zum "if" funktioniert das Beispiel, aber dann...
Kann mir jemand mit der richtigen Syntax weiterhelfen?
Beispiel:
integer a = 5;
integer b = 2;
var c = (a # ";" # b).ToString(0);
WriteLine(c);
a = c.StrValueByIndex(";", 0).ToString(0);
b = c.StrValueByIndex(";", 1).ToString(0);
WriteLine("a=" # a);
WriteLine("b=" # b);
if (a<c) {var d = "ja";}
WriteLine(d);
Vielen Dank schon mal für Profihilfe.
Gruß Boris
-
- Beiträge: 9681
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 700 Mal
- Danksagung erhalten: 1626 Mal
Re: vergleichen von Stringvariablen
Und wie sieht bei dir der output aus? Was ist das Ziel des Vergleich? String oder Zahlen vergleichen?
Und a kleiner c? Echt jetzt?
Und wenn du d in der Schleife erst definierst, dann ist die bei false undefiniert und wirft einen Fehler.
Und a kleiner c? Echt jetzt?
Und wenn du d in der Schleife erst definierst, dann ist die bei false undefiniert und wirft einen Fehler.
LG, Michael.
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
- Roland M.
- Beiträge: 9805
- Registriert: 08.12.2012, 15:53
- System: CCU
- Wohnort: Graz, Österreich
- Hat sich bedankt: 252 Mal
- Danksagung erhalten: 1381 Mal
Re: vergleichen von Stringvariablen
Hallo!
Wenn die Bedingung nicht wahr ist, ist d im WriteLine gar nicht deklariert.
Aber wobei besteht jetzt dein Problem?
Roland
Die Variable d muss außerhalb des if deklariert werden!if (a<c) {var d = "ja";}
WriteLine(d);
Wenn die Bedingung nicht wahr ist, ist d im WriteLine gar nicht deklariert.
Aber wobei besteht jetzt dein Problem?
Code: Alles auswählen
var a = "X";
var b = "Y";
boolean c = (a < b);
WriteLine("Ergebnis: " # c); ! c = true
Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
- Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
- Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
- Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
- Fehlermeldungen genau abschreiben, besser noch...
- Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
-
- Beiträge: 551
- Registriert: 17.04.2021, 17:12
- System: CCU
- Hat sich bedankt: 27 Mal
- Danksagung erhalten: 125 Mal
Re: vergleichen von Stringvariablen
Kleiner Tipp meinerseits.
Es ist keine gute Idee Zahlen in Strings miteinander zu vergleichen.
Das kann zu unerwünschten Ergebnissen führen.
Vergleiche:
Gruß
Harry
Es ist keine gute Idee Zahlen in Strings miteinander zu vergleichen.
Das kann zu unerwünschten Ergebnissen führen.
Vergleiche:
Code: Alles auswählen
integer a = 15;
integer b = 2;
WriteLine(a.Type());
WriteLine(b.Type());
WriteLine( (a>b));
string a = "15";
string b = "2";
WriteLine(a.Type());
WriteLine(b.Type());
WriteLine( (a>b));
Harry
Gruß
Harry
Harry
Re: vergleichen von Stringvariablen
Danke Harry,
Danke für dieses sehr gute Beispiel. Macht das Verstehen etwas klarer. Dennoch: für Nichtprogrammierer keine einfache Welt. Aber, es macht auch Spass.
Danke für dieses sehr gute Beispiel. Macht das Verstehen etwas klarer. Dennoch: für Nichtprogrammierer keine einfache Welt. Aber, es macht auch Spass.
Gruß Boris
- Roland M.
- Beiträge: 9805
- Registriert: 08.12.2012, 15:53
- System: CCU
- Wohnort: Graz, Österreich
- Hat sich bedankt: 252 Mal
- Danksagung erhalten: 1381 Mal
Re: vergleichen von Stringvariablen
Hallo Boris!
Auch bei dieser Frage gilt: bitte immer den konkreten Anwendungsfall schildern, dann wird auch das Helfen leichter!
Willst du hier wirklich Strings vergleichen (a > b), Zahlen (z.B. Rückgabewerte von externen Abfragen), sind die "Nachkommastellen" in der Länge fixiert, oder, oder, oder... In deinem vorigen Thread viewtopic.php?f=26&t=70135&p=683426#p683426 hast du das ja auch (noch) nicht beantwortet...
Roland
Auch bei dieser Frage gilt: bitte immer den konkreten Anwendungsfall schildern, dann wird auch das Helfen leichter!
Willst du hier wirklich Strings vergleichen (a > b), Zahlen (z.B. Rückgabewerte von externen Abfragen), sind die "Nachkommastellen" in der Länge fixiert, oder, oder, oder... In deinem vorigen Thread viewtopic.php?f=26&t=70135&p=683426#p683426 hast du das ja auch (noch) nicht beantwortet...
Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
- Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
- Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
- Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
- Fehlermeldungen genau abschreiben, besser noch...
- Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
-
- Beiträge: 9681
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 700 Mal
- Danksagung erhalten: 1626 Mal
Re: vergleichen von Stringvariablen
Das habe ich ja auch schon gefragt, aber Hilfe zur Selbsthilfe ist anscheinend nicht gefragt. Warten wir einfach auf das nächste Rätsel des TAges.
LG, Michael.
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Re: vergleichen von Stringvariablen
Oha, da bin ich sicher falsch verstanden worden. Mein Ansinnen und meine Fragen an das Forum haben das Ziel, mein Verständnis für die eQ-3 Scriptsprache zu vertiefen. Mein Hintergrund ist einerseits etwas Erfahrung mit MS-VBA und andererseits derWunsch, mein Leben als invalider Rollstuhlfahrer mit Hilfe von Homematic-Produkten etwas sicherer und komfortabler zu gestalten..
Derzeit bemühe ich mich darum mein Pflegebett, das mit einer manuellen eFernbedienung ausgestattet ist, auf HmIP-RC8 umzurüsten.
Dabei haben mir eure Hinweise sehr geholfen!
Ich wäre dankbar, wenn ich weiterhin auf eure Hilfestellungen rechnen kann.
Derzeit bemühe ich mich darum mein Pflegebett, das mit einer manuellen eFernbedienung ausgestattet ist, auf HmIP-RC8 umzurüsten.
Dabei haben mir eure Hinweise sehr geholfen!
Ich wäre dankbar, wenn ich weiterhin auf eure Hilfestellungen rechnen kann.
Gruß Boris
- Roland M.
- Beiträge: 9805
- Registriert: 08.12.2012, 15:53
- System: CCU
- Wohnort: Graz, Österreich
- Hat sich bedankt: 252 Mal
- Danksagung erhalten: 1381 Mal
Re: vergleichen von Stringvariablen
Hallo Boris!
Nur bitte habe aber auch Verständnis, dass mit etwas Hintergrundwissen - eben der konkrete Anwendungsfall - auch das Helfen leichter funktioniert, da oft eine recht allgemein gestellte Frage Antworten in mehrere Richtungen zulässt und man meist nicht gewillt ist, alle Eventualitäten aufzuzählen, da das den Umfang einer Antwort sprengen würde.
Mit meiner Unterstützung kannst du aber sicher (soweit es mir möglich ist und mein Wissen reicht) rechnen, auch ich habe die Homematic eingesetzt, um den Alltag mit meinem Vater bis ganz kurz vor seinem 93. Geburtstag allen zu erleichtern. Ich glaube auch behaupten zu dürfen, wovon ich spreche...
Roland
Selbstverständlich wird auch das weiterhin geschehen!
Nur bitte habe aber auch Verständnis, dass mit etwas Hintergrundwissen - eben der konkrete Anwendungsfall - auch das Helfen leichter funktioniert, da oft eine recht allgemein gestellte Frage Antworten in mehrere Richtungen zulässt und man meist nicht gewillt ist, alle Eventualitäten aufzuzählen, da das den Umfang einer Antwort sprengen würde.
Mit meiner Unterstützung kannst du aber sicher (soweit es mir möglich ist und mein Wissen reicht) rechnen, auch ich habe die Homematic eingesetzt, um den Alltag mit meinem Vater bis ganz kurz vor seinem 93. Geburtstag allen zu erleichtern. Ich glaube auch behaupten zu dürfen, wovon ich spreche...
Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
- Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
- Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
- Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
- Fehlermeldungen genau abschreiben, besser noch...
- Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...