我有一个IP地址数组,下面是示例数组:
$arr = "22.22.22.22", "33.33.33.33", "44.44.44.44"
我试图在每个IP的开头和结尾插入引号"
并将数组转换为字符串值。我尝试过:
$arr | ForEach-Object { $newArr += $_.Insert(0,'" ') }
输出:
$newArr
" 22.22.22.22" 33.33.33.33" 44.44.44.44
所需的字符串输出:
"22.22.22.22" "33.33.33.33" "44.44.44.44"
使用powershell是否有可能?
答案 0 :(得分:2)
这是一个主意。首先,使用" "
分隔符将数组转换为字符串,然后在"
字符前添加和追加。
$newStr = '"' + [system.String]::Join('" "',$arr) + '"'
# "22.22.22.22" "33.33.33.33" "44.44.44.44"
答案 1 :(得分:1)
或使用-f
格式运算符。
类似
($arr | ForEach-Object { '"{0}"' -f $_ }) -join ' '
或更短:
'"{0}"' -f ($arr -join '" "')