| 4D v15.4GET TEXT KEYWORDS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v15.4
 GET TEXT KEYWORDS 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET TEXT KEYWORDS ( Text ; arrKeywords {; *} ) | ||||||||
| Parameter | Typ | Beschreibung | ||||||
| Text | Text |   | Originaltext | |||||
| arrKeywords | Array Text |   | Array mit Schlüsselwörtern | |||||
| * | Operator |   | Mit Stern: einmalige Wörter | |||||
Der Befehl GET TEXT KEYWORDS zerteilt alle Parameter Text in einzelne Wörter und erstellt für jedes Wort einen Eintrag im Array arrKeywords.
4D verwendet zum Aufteilen von Text in einzelne Wörter denselben Algorithmus wie zum Erstellen von Volltext-Index. Er basiert auf der ICU Library. Weitere Informationen dazu finden Sie unter folgender Adresse: http://userguide.icu-project.org/boundaryanalysis.
Hinweis: Auf vielfachen Wunsch haben wir für Französisch und Italienisch eine Ausnahme eingeführt: Folgt auf den Apostroph (') ein Vokal oder der Buchstabe "h", gilt er als Worttrenner. Zum Beispiel: die Zeichenketten "L'homme" oder "l'arbre" werden geteilt in "L’"+"homme" und "l'"+"arbre".In einem Formular mit einem Suchbereich kann der Benutzer ein oder mehrere Wörter eingeben. Bestätigt er dieses Formular, suchen wir nach Datensätzen, in denen das Datenfeld MyField mindestens eins der vom Benutzer eingegebenen Wörter enthält.
  // vSearch ist die Variable des Suchbereichs im Formular
 GET TEXT KEYWORDS(vSearch;arrSearch;*)
  //* falls der Benutzer das gleiche Wort mehr als einmal eingibt
 CREATE SET([MyTable];"Totalfound")
 $n:=Size of array(arrSearch)
 For($i;1;$n)
    QUERY([MyTable];[MyTable]MyField % arrSearch{$i})
    CREATE SET(([MyTable];"found")
    UNION("Totalfound";"found";"Totalfound")
 End for
 USE SET("Totalfound")Im gleichen Formular wie oben suchen wir nach Datensätzen, wo das Feld MyField alle vom Benutzer eingegebenen Wörter enthält.
  // vSearch ist die Variable des Suchbereichs im Formular
 GET TEXT KEYWORDS(vSearch;arrSearch;*)
 $n:=Size of array(arrSearch)
 QUERY([MyTable];[MyTable]MyField >=0;*)
  // Suche initialisieren = alle Datensätze
 For($i;1;$n)
    QUERY([MyTable];&;[MyTable]MyField % arrSearch{$i};*)
  // Kriterium hinzufügen
 End for
 QUERY([MyTable]) //searchWörter in einem Text zählen:
 GET TEXT KEYWORDS(vText;arrWords) // Alle Wörter
 $n:=Size of array(arrWords)
 GET TEXT KEYWORDS(vText;arrWords;*) // verschiedene Wörter
 $m:=Size of array(arrWords)
 ALERT("Dieser Text enthält "+String($n)+" separate Wörter unter "+String($m))
	Produkt: 4D
	Thema: String
	Nummer: 
        1141
        
        
        
	
	Erstellt: 4D v13
	
	
	4D Programmiersprache ( 4D v15.4)
	
	
	4D Programmiersprache ( 4D v15)
	
	
	
	
	
	
	
	
	4D Programmiersprache ( 4D v15.3)
	
	
 Fehler melden
Fehler melden