Ich habe die folgende Beispiel string:Wie erhalten Sie alle Übereinstimmungen in Python mit RegEx, wenn das Muster ähnlichen Text enthält?
dies ein Test für den Verlust von Offsite-Leistung ist
Ich habe folgende Tags:
Offsite Macht, Verlust von Offsite-Leistung
Ich versuche, alle Übereinstimmungen aus der Zeichenfolge zu erhalten. Jedoch, wenn ich diesen Code haben:
import re
description = 'this is a test of the loss of offsite power'
all_tags = ['offsite power', 'loss of offsite power']
reg_ex = '|'.join(['\\b%s\\b' % t for t in all_tags])
expression = re.compile(reg_ex, re.IGNORECASE)
matches = re.findall(expression, description)
results = [m for m in matches]
print results
Meine Ergebnisse sind wie folgt:
['loss of offsite power']
ich beide Instanzen der Tags erhalten müssen. Ich weiß, dass ich dies tun kann, indem ich jedes Tag durchlaufen und dann die Beschreibung jedes Tags durchsuche, aber gibt es eine Möglichkeit, dies in 1 Suche zu tun?
Mein Code ist für Python 2.7, aber ich werde auch Python 3 Antworten akzeptieren.
Hinweis: Meine Liste der endgültigen Schlüsselwörter ist etwa 2000 Sätze ähnlich wie oben.
Sind die Tags * Literale *? –
@ WiktorStribiżew ja, das sind sie. Es muss für jedes der Tags genau stimmen. – CodeLikeBeaker