在Powershell中,如何替换包含问号的字符串?

Ste*_*ver 6 powershell replace

在Powershell中,如何替换包含问号的字符串?例如:

(Get-Content file.txt) -replace "Hello?","Hello."

问号似乎被解释为某种特殊的性格.有办法逃脱吗?我尝试使用一两个反引号,但没有成功.

The*_*ian 8

-replace操作员使用正则表达式模式匹配.在RegEx中,问号是一个量词,表示前一个匹配应匹配零次或一次.你可以通过在它前面放一个反斜杠来逃避问号:

(Get-Content file.txt) -replace "Hello\?","Hello."
Run Code Online (Sandbox Code Playgroud)

  • 或者,您可以使用`.Replace()`字符串方法,它不使用正则表达式 (4认同)