Ich versuche, Zeilen einer CSV-Datei zu löschen, wobei zwei Spalten teilweise denselben Wert enthalten, wie folgt:
ColA ColB ColC ColD
mydom/users/michael mydom2\michael blabla false
mydom/users/julia mydom2\sandra blabla true
mydom/users/charlie mydom2\charlie blabla false
mydom/users/max mydom2\albert blabla false
Wenn ColA nach dem letzten Schrägstrich (z. B. Michael) denselben Namen wie ColB enthält Nach dem Backslash (wie in Zeile 1 und 3) sollte die gesamte Zeile gelöscht werden.
Gibt es eine Möglichkeit, Duplikate mit speziellen Kriterien zu entfernen? Brauche Hilfe, danke.
Antworten:
Mit Powershell
-n
gibt nicht übereinstimmende Werte zurück, Muster sind die gewünschten Bedingungen (mit zusätzlicher Prüfung des Trennzeichens der CSV-Datei) Einmal getestet, können Sie hinzufügen> new_file.csv
am Ende der Zeile.quelle
;
stattdessen..*
sucht 0 oder mehr (*
) Zeichen (.
, irgendein).\\
ist der Backslash, für den ein Backslash erforderlich ist.\1
ist ein Rückverweis auf durch Klammern erfasste Inhalte: Wenn Sie nach dem Schrägstrich "Michael" haben, müssen Sie nach dem Backslash "Michael" haben.