regulärer Python-Ausdruck über mehrere Zeilen

Ich sammle einige Informationen von einigen Cisco-Geräten, die Python und Pexpect verwenden, und hatte viel Erfolg mit REs, um lästige kleine Elemente zu extrahieren. Ich fürchte, ich bin hier gegen die Wand gestoßen. Einige Schalter stapeln sich, ich habe dies im Skript identifiziert und eine separate Routine verwendet, um die Daten zu analysieren. Wenn der Schalter gestapelt ist, wird Folgendes angezeigt (aus der Ausgabe des Shoppers extrahiert)

Top Assembly Part Number        : 800-25858-06
Top Assembly Revision Number    : A0
Version ID                      : V08
CLEI Code Number                : COMDE10BRA
Hardware Board Revision Number  : 0x01


Switch   Ports  Model              SW Version              SW Image
------   -----  -----              ----------              ----------
*    1   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M  
     2   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M
     3   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M
     4   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M


Switch 02 
---------
Switch Uptime                   : 11 weeks, 2 days, 16 hours, 27 minutes
Base ethernet MAC Address       : 00:26:52:96:2A:80
Motherboard assembly number     : 73-9675-15

Wenn ich darauf stoße, muss ich die Schalternummer und das Modell für jede in der Tabelle von 4 extrahieren (sw kann ignoriert werden, aber es können zwischen 1 und 9 Schalter sein) war in Ordnung mit dem Rest. Irgendwelche Ideen bitte?

OK Entschuldigung. Mein Regex hat einfach angefangen, die letzte Gruppe von - bis .. dann konnte ich nicht arbeiten oder wohin!
- {10] \ s- {10} (. +) Wechseln

Das Modell wird sich ändern und die Anzahl der Schalter wird sich ändern. Ich muss die 4 Zeilen in diesem Beispiel erfassen, die sind

*    1   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M  
     2   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M
     3   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M
     4   52     WS-C3750-48P       12.2(35)SE5             C3750-IPBASE-M

Aber jeder Schalter könnte ein anderes Modell sein und es könnte zwischen 1 und 9 sein. Für dieses Beispiel möchte ich im Idealfall bekommen

*,1,WS-C3750-48P
,2,WS-C3750-48P
,3,WS-C3750-48P
,4,WS-C3750-48P  

(das Sternchen bedeutet Master)
Aber diese Zeilen zu bekommen würde mich auf den richtigen Weg bringen

Antworten auf die Frage(2)

Ihre Antwort auf die Frage