Ich habe Probleme mit einem regulären Ausdruck, der alle Instanzen der angegebenen Wörter abgleicht, aber keine Teilzeichen enthält. Der Text, den ich scanne, ist reiner HTML-Code.Komplexer regulärer Ausdruck, um bestimmte Wörter, aber keine Teilwörter zu erfassen
Hier ist meine aktuelle Regex:
/(|>|^|;|,|)(detroit|to|christmas|holiday|test|his)(<| |\.|;|,|\!|\?|\)|$)/i
Das regex werden die fett gedruckten Worte entsprechen:
verteilt werdenimmer Agile installieren Sie die neueste Version von entsprechenden Service und Installationsverfahren! Die in dieser Datenbank enthaltenen Schritte beziehen sich auf Fehlerbehebung, nicht zur Ausführung des Dienstes. Dies ist kein gelenktes Dokument und kann nicht zu nicht Stryker Personal
Weihnachten Urlaub Weihnachten Weihnachten Urlaub ist etwas detroit Weihnachten Urlaub
Wenn ich die Regex ändern an:
/(|>|^|;|,|)?(detroit|to|christmas|holiday|test|his)(<| |\.|;|,|\!|\?|\)|$)/i
Der Regex paßt folgende:
immer Agile überprüfen Sie die la Test Version der geltenden Service- und Installationsverfahren! Die in der Datenbank von enthaltenen Schritte dienen nur zur Fehlerbehebung, nicht zur Durchführung von Wartungsarbeiten. T seine ist kein gelenktes Dokument und kann nicht zu nicht-Stryker Personal
Weihnachten, Urlaub, Weihnachten, Weihnachten Urlaub verteilt ist etwas detroitWeihnachten Urlaub
Die zweite Version passt zu allen Wörtern, die es aber wegen der? Modifikator es ist auch passende Teiltöne, die ich überspringen möchte. Wie kann ich die Regex ändern, so dass eine Übereinstimmung von "Weihnachten" den Raum von der nächsten möglichen Übereinstimmung nicht verbessert?
Vielleicht '\ b (detroit | bis | Weihnachten | Urlaub | Test | his) \ b'? Was ist das "Weihnachten", das du versuchst zu erreichen? Auf welcher Sprache/Plattform läuft das? – chris85