2014-10-23 3 views
1

문자열의 시작 부분을 자르려고하고 있지만 TrimStart()으로 항상 올바르게 작동하지는 않습니다. 아래 첫 번째 예제에서는 제대로 작동하지만 두 번째 예제에서는 그렇지 않습니다.PowerShell TrimStart가 항상 작동하지 않는 경우

올바른 결과 :

$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')} 

잘못된 결과 :

$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\')} 

사람이 가장 좋은 방법은 문자열의 시작 부분의 트림하는 것입니다 무엇 나를 도울 수 있습니까?

답변

1

봅니다과 같이 대신 교체 사용 : 당신이 기대대로 작업 아무튼 때문에 작동하지 않습니다 trimstart 이유

$string = 'S:\Test\Bob\Out_Test\Beez\ISO\ISO\Environnement' 
$string.Replace('S:\Test\Bob\Out_Test\','') 

이유입니다. 입력 한 내용은 문자열이 아니며 문자 배열입니다.

여기에서 자세한 내용을 확인할 수 있습니다. http://msdn.microsoft.com/en-us/library/system.string.trimstart(v=vs.110).aspx

+0

굉장! 이것은 실제로 트릭을합니다. 대단히 감사합니다 :) – DarkLite1

관련 문제