【发布时间】:2013-09-16 05:40:47
【问题描述】:
对此我一直摸不着头脑,最终只使用了 String.Replace,但是,我想知道 Powershell 在做什么,谁能给我解释一下?
>"aaa" -replace "aaa", 'GG$$`~~'
结果:
GG$`~~
而不是
GG$$`~~
我的印象是单引号阻止了字符串中内容的扩展,这与正则表达式有关吗?如果我在每一美元和反引号之间添加一些东西,它会起作用,但这不是我想要的......
编辑:
似乎是多种事物的结合:
"aaa" -replace "aaa", '$$' --> "$"
"aaa" -replace "aaa", '$`' --> ""
我仍然不知道为什么要这样做
【问题讨论】:
-
您可能需要转义
$(注意$是正则表达式中的特殊字符)。 -
看起来你是对的,我只是没想到必须用替换字符串来做......
-
所以只有 $$ 才是问题所在,
"aaa" -replace "aaa",'$#GG$$``~~' --> $#GG$``~~
标签: regex powershell