PowerShell in Textdatei nach bestimmten Zeichen suchen?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ganz schön heftig Dein String (³%&Ha5³{{ll³o/") , darin noch ein Hallo zu entdecken ist schon ein kleines Kunststück für ein Menschliches Gehirn

Zum Glück gibt es Regular Expression.

Für Deinen Fall:

  • [hH] = H oder h
  • [\W\d]* = 0mal oder beliebig oft: (kein Buchstabe oder Zahl \W ) oder (eine Zahl \d )
  • [a] = a...usw....

search.ps1

$regex = '[H][\W\d]*[a][\W\d]*[l][\W\d]*[l][\W\d]*[o]'
Select-String -Path test.txt -Pattern $regex
pause

test.txt

ballo
³%&Ha5³{{ll³o/"
Moppelkotze
³%&Ha³{{ll³o/"
Rumpelheinz
§%&h²³a[8]8%l€!l=o

Quellen:

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-7

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_regular_expressions?view=powershell-7

https://docs.microsoft.com/de-de/dotnet/standard/base-types/regular-expression-language-quick-reference

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren
Suprana 
Fragesteller
 26.03.2020, 09:28

Du bist ein Gott, ich Danke dir!

1

Was ist denn mit findstr?

https://www.computerhope.com/findstr.htm

Hier in einem Batch-Skript demonstriert:

https://www.computerhope.com/issues/ch001102.htm

Woher ich das weiß:Studium / Ausbildung – Informatikstudium für 4 Jahre, Ausbildung FIAE
Suprana 
Fragesteller
 26.03.2020, 09:30

Ja, ich habe es erst mit Findstr probiert, aber ich muss Nummer filtern, nach langen probieren scheint es wohl einen bekannten Fehler mit finstr zu geben, dass es bei über 3 Zahlen zu Fehlern falschen Ergebnissen kommt, wieso auch immer :(

0
MrBienenmann  26.03.2020, 09:32
@Suprana

Ja, schade. Aber schön, dass Du in dem anderen Kommentar schon die Antwort gefunden hast :D

0