Una domanda abbastanza semplice, spero.Powershell ignora lo sguardo dietro l'espressione regolare per restituire l'intera riga
Ho un file di log di testo che include la seguente riga:
123,010502500114082000000009260000000122001T
voglio per la ricerca in file di registro e tornare alla sezione "00.000.000,926 mila" del testo di cui sopra . Quindi ho scritto un'espressione regolare: = 123. {17}). {11}
Quindi quando l'aspetto dietro il testo è uguale a "123" con 17 caratteri, restituire il successivo 11. Funziona correttamente quando viene testato sugli editor regex online. Comunque in Powershell viene restituita l'intera riga invece degli 11 caratteri che voglio e non riesco a capire perché.
$InputFile = get-content logfile.log
$regex = '(?<=123.{17}).{11}'
$Inputfile | select-string $regex
(viene restituita l'intera riga).
Perché PowerShell restituisce l'intera linea?
Ha senso e utilizza -match invece di select-string lavorate. Grazie per l'aiuto. – user3046742