
133883
10.08.2017, aktualisiert um 12:03:35 Uhr
BUG in Powershell bei Verwendung einer Sub-Expression innerhalb von Anführungszeichen
Hallo liebe Powershell Coder.
Folgende Codezeile die direkt in einem String ausgeführt werden soll hat die merkwürdige Angewohnheit das sie eine schließende Klammer anfordert obwohl alle Klammern korrekt geschlossen werden.
Nun der Clou: Wenn ich im Regular-Expression-String der ja nach wie vor zusätzlich in einfachen Anführungszeichen steht eine öffnende Klammer ( in den Regex String der entweder einen Slash oder eine schließende Klammer matchen soll einfüge, dann ist die Powershell zufrieden???!!!
Es scheint also als ob die PS die Klammer im Regex String als normale Ausdruck-Klammer interpretiert, was eigentlich nicht sein darf ...
Und falls einer meint die Klammern im Regex seien nicht mit Backslash escaped, dem kann ich sagen, nein innerhalb einer Auswahl ist das hier nicht nötig, aber auch mit zusätzlichem Escaping kein Erfolg.
Für mich sieht das nach einem unschönen Bug aus. Was meint Ihr?
Gruß exguru
Folgende Codezeile die direkt in einem String ausgeführt werden soll hat die merkwürdige Angewohnheit das sie eine schließende Klammer anfordert obwohl alle Klammern korrekt geschlossen werden.
"$(((gc 'D:\Datei.txt' -TotalCount 1) -split '[/)]+')[1])"
"$(((gc 'D:\Datei.txt' -TotalCount 1) -split '[/()]+')[1])"
Und falls einer meint die Klammern im Regex seien nicht mit Backslash escaped, dem kann ich sagen, nein innerhalb einer Auswahl ist das hier nicht nötig, aber auch mit zusätzlichem Escaping kein Erfolg.
Für mich sieht das nach einem unschönen Bug aus. Was meint Ihr?
Gruß exguru
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 345946
Url: https://administrator.de/forum/bug-in-powershell-bei-verwendung-einer-sub-expression-innerhalb-von-anfuehrungszeichen-345946.html
Ausgedruckt am: 04.05.2025 um 13:05 Uhr
3 Kommentare
Neuester Kommentar
Servus @exguru,
tatsache
, ist mir auch noch nicht aufgefallen. Scheint wirklich ein Bug zu sein, selbst ein
wirft mir hier den Fehler da die Klammer nicht als reiner Text interpretiert wird, was ein
bestätigt.
Ich poste das ganze zur Sicherheit zusätzlich mal ins englische Technet.
Grüße Uwe
tatsache
"$(')')"
"$('()')"
Ich poste das ganze zur Sicherheit zusätzlich mal ins englische Technet.
Grüße Uwe
Da es ein Interpreter-Bug zu sein scheint hier der Link zum meinem Bug-Track im Github
https://github.com/PowerShell/PowerShell/issues/4543
und der Link ins Technet
https://social.technet.microsoft.com/Forums/windowsserver/en-US/aeff1790 ...
https://github.com/PowerShell/PowerShell/issues/4543
und der Link ins Technet
https://social.technet.microsoft.com/Forums/windowsserver/en-US/aeff1790 ...