Hallo.
Ich habe folgendes Problem:
Ich greife diverse Begriffe von der Betreff-Benachrichtigung meines Mailprogramms in der Statusbar ab. Ich lese den Betreff bei einer Benachrichtigung ein und will ihn mit Begriffen in einer Textdatei vergleichen - z.B. kommt in einer Mail der Begriff "hat dir eine Videonachricht geschickt", dann soll die Benachrichtigung geschlossen werden. Ich müsste jeden abgespeicherten Wert mit der Benachrichtigung vergleichen. Hierzu habe ich das Bespielskript TextFileChecker verwendet. Leider müsste ich mit "matches(file_text, ".*Begriff aus der Textdatei.*) arbeiten, da z.B. der Text tlw. nicht 100% gleich ist. Wie kann ich jeden einzelnen Begriff in der Textdatei Zeilenweise einlesen und mit dem ermittelten Text vergleichen. Beispiel: Abgespeicherter Wert "Hallo", ermittelter Text "Hallo: ich bins" - wenn identisch, dann Benachrichtigung entfernen.
Gruß Jürgen
[German]Begriffe in Textdatei einlesen und mit Wert vergleic
Moderator: Martin
Re: [German]Begriffe in Textdatei einlesen und mit Wert verg
Hallo Jürgen
Du könntest eine Condition Expression verwenden und true zurückgeben, wenn der Text einen Begriff der Textdatei enthält.
Anstelle von contains könntest du auch matches verwenden, dann müsste aber jede Zeile der Textdatei ein gültiges Regex-Pattern enthalten.
Freundliche Grüsse
Martin
Du könntest eine Condition Expression verwenden und true zurückgeben, wenn der Text einen Begriff der Textdatei enthält.
Code: Select all
// Textdatei in Zeilen aufteilen
keywords = split(text_file, "\\n");
// Schleife über jede Zeile der Textdatei
for (keyword in keywords)
{
// prüfen ob der Text das Schlüsselwort aus der Textdatei enthält
if (contains(text, keyword))
{
// Schlüsselwort ist enthalten, Script mit true beenden
return true;
}
}
// Schlüsselwort ist nicht enthalten, Script mit false beenden
return false;
Freundliche Grüsse
Martin
Re: [German]Begriffe in Textdatei einlesen und mit Wert verg
Hallo Martin,
besten Dank, hat hingehaun!
Gruß Jürgen
besten Dank, hat hingehaun!
Gruß Jürgen
Re: [German]Begriffe in Textdatei einlesen und mit Wert verg
Hallo Martin,
Kannst du mir bitte nochmal helfen?!
Ich möchte nach jedem einzelnen Begriff aus der Texdatei eine Aktion auslösen. Hier müsste ich meiner Meinung nach jedem Begriff diesen in eine Variable fortlaufend schreiben, z.B. Begriff(1)… um jeden Begriff dann einzeln an ein Programm zu schicken, z.B. rufe Mailprogramm auf, wähle Suchen und gebe nacheinander jeden Begriff ein. Wie ich letzteres mache, glaube ich zu wissen - nur wie ich jeden Begriff auswerten kann, daran scheitert es um Moment.
Danke für einen Tipp!
Gruß Jürgen
Kannst du mir bitte nochmal helfen?!
Ich möchte nach jedem einzelnen Begriff aus der Texdatei eine Aktion auslösen. Hier müsste ich meiner Meinung nach jedem Begriff diesen in eine Variable fortlaufend schreiben, z.B. Begriff(1)… um jeden Begriff dann einzeln an ein Programm zu schicken, z.B. rufe Mailprogramm auf, wähle Suchen und gebe nacheinander jeden Begriff ein. Wie ich letzteres mache, glaube ich zu wissen - nur wie ich jeden Begriff auswerten kann, daran scheitert es um Moment.
Danke für einen Tipp!
Gruß Jürgen
Re: [German]Begriffe in Textdatei einlesen und mit Wert verg
Hallo Jürgen
Willst du alle Begriffe sammeln und am Ende des Flows einige Actions ausführen?
Du könntest dazu das Skript wie folgt verändern und die Begriffe in einer Liste sammeln:
Die Condition wird also mit Ja beendet, wenn mindestens ein Schlüsselwort enthalten war. Die Variable matching_keywords enthält dann jedes passende Schlüsselwort. Diese Liste kannst du dann in einer Action verwenden.
Freundliche Grüsse
Martin
Willst du alle Begriffe sammeln und am Ende des Flows einige Actions ausführen?
Du könntest dazu das Skript wie folgt verändern und die Begriffe in einer Liste sammeln:
Code: Select all
// Textdatei in Zeilen aufteilen
keywords = split(text_file, "\\n");
matching_keywords = newList();
// Schleife über jede Zeile der Textdatei
for (keyword in keywords)
{
// prüfen ob der Text das Schlüsselwort aus der Textdatei enthält
if (contains(text, keyword))
{
// Schlüsselwort ist enthalten, Schlüsselwort in Liste einfügen
addElement(matching_keywords, keyword);
}
}
// true zurückgeben, wenn mindestens ein Schlüsselwort gefunden wurde
return length(matching_keywords)>0;
Freundliche Grüsse
Martin