Hier ist das Muster, das ich habe:Muster Passende Jede zweite Zeile von Eingangs
\s+\d+:\s+(?<local>\d+)[-][>]\s+?(?<remote>\d+)\s+(?<wwn>..:..:..:..:..:..:..:..)\s+\d+\s+(?<name>\w+)\s+[s][p]:\s+\w+.\w+\s+\w+[:]\s+\d.\w+\s+(?<trunk>TRUNK)?
Hier ist der Eingang. Das '*' ist nicht Teil der Eingabe, es bestimmt nur, was zusammenpasst. Ich teste das bei RegExStorm.net. Ich denke nicht, dass jede andere Zeile für sich genommen von Bedeutung ist, andere Eingaben folgten nicht, wenn alle anderen Zeilen übereinstimmten. Ich kann nicht sehen, was anders ist, wenn überhaupt zwischen den übereinstimmenden und nicht übereinstimmenden Zeilen außer der Zeile, die QOS sagt, aber das Spiel sollte dort immer noch erfolgreich sein, würde es das einfach wegwerfen.
* 1: 0-> 11 10:00:00:05:1e:89:ed:8c 14 SAN009B sp: 8.000G bw: 8.000G
2: 23-> 2 50:00:51:e8:b9:1b:ae:01 3 fcr_fd_3 sp: 8.000G bw: 8.000G
* 3: 24-> 22 10:00:00:05:1e:36:5b:ea 1 SAN001B sp: 4.000G bw: 4.000G TRUNK
4: 38-> 38 10:00:00:05:1e:e2:45:00 9 SAN004B sp: 8.000G bw: 24.000G TRUNK QOS
*5: 48-> 15 10:00:00:05:1e:89:ed:8c 14 SAN009B sp: 8.000G bw: 8.000G
6: 49-> 10 10:00:00:05:1e:87:5a:e4 13 SAN013B sp: 8.000G bw: 8.000G
*7: 56-> 3 10:00:00:05:1e:84:15:dc 11 SAN011B sp: 8.000G bw: 8.000G
8: 64-> 16 10:00:00:05:1e:89:ed:8c 14 SAN009B sp: 8.000G bw: 8.000G
* 9: 65-> 18 10:00:00:05:1e:87:5a:e4 13 SAN013B sp: 8.000G bw: 8.000G
10: 72-> 63 10:00:00:05:1e:84:15:dc 11 SAN011B sp: 8.000G bw: 8.000G
*11: 87-> 27 50:00:51:e8:b9:1b:ae:01 3 fcr_fd_3 sp: 8.000G bw: 8.000G
Das ist eine praktische Seite. Ich habe es vorgemerkt. Ich mag es, dass es benannte Gruppen behandelt. Ich konnte herausfinden, dass das führende \ s + einige der Matches durcheinander brachte. –
Ich würde gerne wissen, warum dieses führende '\ s +' die Matches vermasselt hat. RegEx versucht, die Leerzeichen zu finden, die vor dem fallen? –
@DavidGreen Erstellen Sie ein minimales Beispiel, das das Problem reproduziert. Je kleiner das Beispiel ist, desto einfacher ist es, sich damit auseinander zu setzen. – zerkms