仅在powershell

时间:2018-05-03 02:32:41

标签: regex string powershell

场景是用一些特殊字符替换空格,但更改应该仅在特定单词匹配的几个位置发生。

例如

字符串"$my name is $your name is"

必需的输出是:(因此空格替换为"=",仅在起始字符为"$"的单词之后

"$my=name is $your=name is"

2 个答案:

答案 0 :(得分:0)

尝试:

"$my name is $your name is" -replace "(\$\w+)\s",'$1='

Demo

答案 1 :(得分:0)

试试这个:

'$my name is $your name is' -replace "(\$[a-z]+)\s","$1="

(\ $ [a-z] +)匹配一个美元符号,后跟至少一个小写的a-z,并将其存储为$ 1。 \ s表示必须后跟空格。 $ 1 =是替换字符串。它表示与括号中的正则表达式匹配的部分,后跟等号。