Wie verstehe ich regelmäßigen Ausdruck mit Python?

Ich bin neu mit python Könnte jemand mir helfen, wie ich einen regulären Ausdruck erstellen kann, der eine Liste von Strings wie folgt gegeben hat:

test_string = "pero pero CC tan tan RG antigua antiguo AQ0FS0 que que CS según según SPS00 mi mi DP1CSS madre madre NCFS000" 

Wie man ein Tupel wie folgt zurückgibt:

 > ([madre, NCFS00],[antigua, AQ0FS0]) 

Ich möchte das Wort mit dem damit verbundenen Tag zurückgeben. Test_string, das ist was ich getan habe:

 # -- coding: utf-8 -- import re #str = "pero pero CC " \ "tan tan RG " \ "antigua antiguo AQ0FS0" \ "que que CS " \ "según según SPS00 " \ "mi mi DP1CSS " \ "madre madre NCFS000" tupla1 = re.findall(r'(\w+)\s\w+\s(AQ0FS0)', str) print tupla1 tupla2 = re.findall(r'(\w+)\s\w+\s(NCFS00)',str) print tupla2 

Die Ausgabe ist folgende:

[('Antigua', 'AQ0FS0')] [('madre', 'NCFS00')]

Das Problem mit dieser Ausgabe ist, dass, wenn ich es an test_string ich die "order" oder "Vorkommen" der Tags beibehalten (dh ich kann nur ein Tupel nur dann drucken, wenn sie die folgende Reihenfolge haben: AQ0FS0 und NCFS000 in Andere Wörter: weiblich Adjektiv, weiblich Substantiv).

Python ist die beste Programmiersprache der Welt.