Powershell .TrimEnd没有返回正确的结果

时间:2017-06-21 14:32:06

标签: powershell powershell-v2.0 powershell-v3.0 trim

运行以下

$x = "CF21_flddep-op-config"
$x.TrimEnd("-op-config")

结果:

CF21_fldde

何时显示:

CF21_flddep

任何想法为什么?

1 个答案:

答案 0 :(得分:2)

.TrimEnd()不会删除尾随的字符串,它会删除一组尾随的字符p位于该集合中,因此最后p也会被移除。 (您可以使用.TrimEnd("-cfginop")或更明确地.TrimEnd('-', 'c', 'f', 'g', 'i', 'n', 'o', 'p')获得相同的结果。)您需要类似$x -replace "-op-config", ""的内容,或者,如果字符串必须仅在最后发生时被删除,{ {1}}。