Umwandlung String in numerischen Wert

Startseite Foren Deutsches LiveCode-Forum Umwandlung String in numerischen Wert

Ansicht von 10 Antwort-Themen
  • Autor
    Beiträge
    • #21429
      Peter_M
      Teilnehmer

      Hi zusammen,
      Ich habe ein ganz banales Problem:
      Wie kann ich den Wert des Inhalts eines Textfeldes, also einen String in eine numerische Variable umwandeln?
      Danke für eure Antwort.

      Peter

    • #21431
      Klaus Major
      Keymaster

      Gar nicht! 😀

      Es gibt nämlich keine "Datentypen" in LC, daher können wir:

      ...
      put (fld "das mit einer Zahl drin" * 18 + fld "noch 'ne zahl") into fld "ergebnis"
      ...

      Das gibt nur einen ERROR, wenn das Feld KEINE gültige Zahl enthält.

      P.S.
      Schon getestet?
      http://www.livecode-blog.de/forums/topic/ereignis-simulieren-bildschirmschoner-ausschalten/#post-21410

    • #21432
      Peter_M
      Teilnehmer

      Hallo Klaus,
      vielen Dank, deinen Tipp zur Hintanstellung des Energiesparmodus von Handys konnte ich noch nicht ausprobieren, da ich nebenbei noch ich meinen beruflichen Verpflichtungen nachkommen muss. Ich werde aber auf jeden Fall berichten!

    • #21435
      Peter_M
      Teilnehmer

      Hallo Klaus, zum Thema screensaver: auch der Trick mit der Festplattenaktion funktioniert leider nicht, sodass ich meine Nutzer wohl auf die Änderung ihrer Energiespareinstellungen hinweisen muss 🙁

      Das Thema Datentypen ist mir allerdings immer noch etwas obsolet: wenn ich den Code " Put 333 into x" betrachte, dann ist für mein Verständnis doch x eine numerische Variable, oder?!
      Im Code 'put "333" into x' dagegen erscheint x als weiterer Datentyp, in anderen Sprachen Stringvariable genannt. Aber ich muss in LIVECODE wohl stark umdenken....

    • #21436
      Klaus Major
      Keymaster

      Hallo Peter,

      dann ist für mein Verständnis doch x eine numerische Variable, oder?!

      für DEIN Verständnis, das ist korrekt, LC ist eindeutig anders als andere Programmiersprachen!
      Wie gesagt, es gibt keine Datentypen in LC, die "klaubt" sich LC aus dem Zusammenhang zusammen. 😀

      Gruß

      Klaus

    • #21437
      Torsten
      Teilnehmer

      Hi Peter,

      es ist ganz einfach: ALLES ist ein String = eine Kette von Zeichen (eigentlich eine Kette von Nullen und Einsen, wenn man es genau nimmt).

      Ob es eine Zahl ist, sprich, ob der String nur Zeichen enthält, die Ziffern sind, kann man mit "is a number" feststellen:

      if tMeineVariable is a number then 
        put tMeineVariable into field "Zahl"
      else
        put tMeineVariable into field "String"
      end if

      Überhaupt kann man den Inhalt der Variablen mit is a erkennen: https://livecode.fandom.com/de/wiki/Is_a

      So braucht man nicht schon bei der der Definition zu entscheiden, was die Variable sein soll, es ist einfach ein Container, der alles enthalten kann 🙂

      Happy Coding!
      Torsten

    • #21447
      Peter_M
      Teilnehmer

      Hallo Klaus und Torsten,
      vielen Dank für eure Nachhilfe in Sachen Datentypen bei LIVECODE. Ich glaube, das habe ich jetzt "gefressen". Ich vermisse in LIVECODE jedoch noch eine weitere wichtige Funktion, die unter Basic als "Instr"-Funktion die Position einer Zeichenkette in einer anderen bestimmt. Habe ich mal wieder Tomaten auf den Augen oder gibt es eine solche Funktion in LIVECODE tatsächlich nicht, bzw. muss man sich eine solche selber basteln?
      Viele Grüße
      Peter

    • #21448
      Klaus Major
      Keymaster

      Nachdem ich "inStr" im Internet nachgeschlagen habe, denke ich, Du meinst OFFSET!
      offset, itemoffset, wordoffset, truewordoffset, lineoffset etc...

      ...
      put "das ist ein blöder satz" into tText
      put offset("blöd",tText)
      ## -> 13
      put wordoffset("blöd",tText)
      ## -> 4
      put truewordoffset("blöd",tText)
      ## -> 4
      ...

      Falls Du des Englischen ein wenig mächtig bist, empfehle ich diese Stacks, um mehr über die Basics von LC zu erfahren: http://www.hyperactivesw.com/revscriptconf/scriptingconferences.html

    • #21472
      Peter_M
      Teilnehmer

      Hallo Klaus,
      Der Offset- Tipp ist mehr wert als Gold! Sollte meine App je fertig werden, schulde ich dir und Torsten special thanks im Editorial!
      Danke
      Peter

    • #21473
      Klaus Major
      Keymaster

      Das ist lieb gemeint, aber ich möchte das nicht, danke. 🙂

    • #21503
      Peter_M
      Teilnehmer

      Gecheckt!

Ansicht von 10 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.