我想用PowerShell替换循环中某些字符串的一部分
示例字符串
testvm029.vmxxx
我想要取代.vmxxx的一切。每个字符串都有另一个长度,但所有字符串都以.vm...结尾,因此结果应该是:testvm029
我尝试了以下脚本:
Foreach($String in $Strings) {
$StringTest = $String -replace "(.vm)(.+)","$null"
}
当然,这会杀死第一个vm上的字符串,而不是.vm...结果:test
我怎样才能达到我的目标?
编辑:.vm不是最后一个'.‘我的字符串是这样的:test123.vmabc.string
我想在.vm之后剪掉它
发布于 2018-06-18 15:53:23
你需要用
$String -replace '\.vm.*'该模式将找到第一个.vm子字符串(使用\.vm),然后匹配该字符串的其余部分(使用.*)。匹配将被替换为空字符串(默认情况下使用,但您可以显式地编写它,$String -replace '\.vm.*', '')。
https://stackoverflow.com/questions/50910744
复制相似问题