Zählen von Vorkommen eines Chunks

Startseite Foren Deutsches LiveCode-Forum Zählen von Vorkommen eines Chunks

Schlagwörter: 

  • Dieses Thema hat 2 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 7 Jahren von Torsten.
Ansicht von 2 Antwort-Themen
  • Autor
    Beiträge
    • #3729
      Torsten
      Teilnehmer

        Ich habe einen Text und möchte wissen, wie oft bestimmte Wörter oder Zeichengruppen (chunks) in ihm vorkommen. Wie mache ich das am einfachsten?

        Beispiel: „hallo test hallo test2 hallo“

        Wie finde ich heraus, dass hallo dreimal im Text vorkommt?

      • #3731
        Klaus Major
        Administrator

          Hallo Torsten,

          das geht ganz prima mit einem Array, alter Metacard Trick 🙂

          ...
          put "hallo test hallo test2 hallo" into tText
          repeat for each word tWord in tText
          ## Oder mit dem neuen Chunck TRUEWORD, musst Du mal testen, was passt bei Dir..
            add 1 to tArray[tWord]
          end repeat
          put tArray["hallo"]
          ## -> 3
          ...

          Gruß

          Klaus

        • #3745
          Torsten
          Teilnehmer

            Hi Klaus,

            Du bist ein echter Fuchs 🙂

            Als Dank dafür hier mein Skript für eine Wort-Statistik, die eine nach der Häufigkeit des Vorkommens sortierte Liste aller echten Wörter eines Textes erzeugt:

              put field "Text"  into tText
               repeat for each trueword tWord in tText
                  add 1 to tArray[tWord]
               end repeat
               
               repeat for each key myKey in tArray
                  put mykey & tab & tArray[myKey] & cr after wortstatistik
               end repeat
               
               set the itemdelimiter to tab
               sort wortstatistik descending numeric by item 2 of each 
               put wortstatistik into field "WortStatistik"
               
        Ansicht von 2 Antwort-Themen
        • Du musst angemeldet sein, um auf dieses Thema antworten zu können.