PS: regex replace
Umlüx 07.02.2018 - 15:58 1344 0
Umlüx
Huge Metal Fan
|
hallo, ich bins mal wieder. und ich bin wieder zu deppat für alles  ich muss tausende files nach einem bestimmten string pattern durchsuchen und alle vorkommen verändert zurückschreiben. und ich steh beim replace grad an... test für den betroffenen code ausschnitt: $string = "blafasel/CCCA1234567890123456/foobar/HURRZ/CCVI6543210987654321/blubb"
$replace = $string -replace '([C]{2})([A-Z]{2})(\d{4})(\d.*)(\d{4})/','$1$2$3XXXXXXXX$5/'
ich erwarte blafasel/CCCA1234XXXXXXXX3456/foobar/HURRZ/CCVI8765XXXXXXXXXX4321/blubb
ich bekomme aber blafasel/CCCA1234XXXXXXXX4321/blubb
kann ich hier nicht einfach mit replace arbeiten? oder wo hab ich meinen hänger? EDIT: BAH! problem schon gelöst.. ".*" war zu greedy. ".*?" funktioniert wie ich will!
Bearbeitet von Umlüx am 07.02.2018, 16:51
|