I'm trying to trim the beginning of a string, but it doesn't always work correctly with TrimStart(). In the first example below it works fine, but in the second it doesn't.
Correct result:
$Array = 'C:\Users\boblee\AppData\Local\Temp\2\Beez\ISO\ISO\Environnement',
'C:\Users\boblee\AppData\Local\Temp\2\Beez\ISO',
'C:\Users\boblee\AppData\Local\Temp\2\Beez\ISO\Achat'
$Array | % {$_.TrimStart('C:\Users\boblee\AppData\Local\Temp\2')}
Wrong result:
$Array = 'S:\Test\Bob\Out_Test\Beez\ISO\ISO\Environnement',
'S:\Test\Bob\Out_Test\Beez\ISO',
'S:\Test\Bob\Out_Test\Beez\ISO\Achat'
$Array | % {$_.TrimStart('S:\Test\Bob\Out_Test\')}
Can anyone help me out what the best way would be to trim of the beginning of the strings?
Try to use replace instead, like so:
$string = 'S:\Test\Bob\Out_Test\Beez\ISO\ISO\Environnement'
$string.Replace('S:\Test\Bob\Out_Test\','')
The reason why trimstart don't work is because it doesn work as you would expect. The input you give it, is not a string, but an array of characters.
You can read more about it here: http://msdn.microsoft.com/en-us/library/system.string.trimstart(v=vs.110).aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With