运算符的Replace
意思是用其他东西替换某些东西;不要与删除功能混淆。
此外,您应该将操作员处理的结果发送到变量或另一个操作员。既不.Replace()
,也不-replace
修改原始变量。
要删除所有空格,请使用“用空字符串替换任何空格符号”
$string = $string -replace '\s',''
要删除行首和行尾的所有空格,并将所有双倍和更多空格或制表符符号替换为空格键符号,请使用
$string = $string -replace '(^\s+|\s+$)','' -replace '\s+',' '
或更本机的System.String
方法
$string = $string.Trim()
首选正则表达式,因为' '
仅表示“空格键”符号,而'\s'
表示“空格键、制表符和其他空格符号”。请注意,$string.Replace()
“Normal”是否替换,$string -replace
RegEx 是否替换,后者更重但更实用。
请注意,RegEx 有一些特殊符号,如点 ( .
)、大括号 ( []()
)、斜线 ( \
)、帽子 ( ^
)、数学符号 ( +-
) 或美元符号 ( $
),需要进行转义。( 'my.space.com' -replace '\.','-'
=> 'my-space-com'
. 带数字的美元符号 (ex $1
) 必须小心用在正确的部分
'2033' -replace '(\d+)',$( 'Data: $1')
Data: 2033
更新:您还可以使用$str = $str.Trim()
,TrimEnd()
和TrimStart()
. 在System.String MSDN 页面上阅读更多信息。