Powershell 带有管道字符的字符串-如何避免它们被误认为是逻辑或?

Powershell 带有管道字符的字符串-如何避免它们被误认为是逻辑或?,powershell,Powershell,$HTMLITLE1 $word = '{Quit|Discontinue|Stop|Cease|Give Up}' $htmltitle1 = $word -replace '{Quit|Discontinue|Stop|Cease|Give Up}', 'Give Up' 如何强制powershell将要替换的文本作为精确字符串而不是逻辑或字符串 应该是: Give Up|Give Up|Give Up|Give Up|Give Up 谢谢它很管用!谢谢。因此,唯一的方法是使用.ne

$HTMLITLE1

$word = '{Quit|Discontinue|Stop|Cease|Give Up}'
$htmltitle1 = $word -replace  '{Quit|Discontinue|Stop|Cease|Give Up}', 'Give Up' 
如何强制powershell将要替换的文本作为精确字符串而不是逻辑或字符串

应该是:

Give Up|Give Up|Give Up|Give Up|Give Up

谢谢

它很管用!谢谢。因此,唯一的方法是使用.net正则表达式?您可以手动执行[regex]的操作::escape将对这个特定的表达式执行操作,即在正则表达式元字符之前反斜杠:{Quit\\\\\ Discontinue\\ Stop\\ Stop\\ Stop\\ Stop\\放弃}它可以工作!谢谢。因此,唯一的方法是使用.net正则表达式?您可以手动执行[regex]的操作::escape将对这个特定的表达式执行操作,即在正则表达式元字符之前反斜杠:{Quit\\\\\ Discontracte\\ Stop\\ Stop\\ Stop\\ Stop\\放弃}
Give Up
$htmltitle1 = $word -replace [regex]::escape('{Quit|Discontinue|Stop|Cease|Give Up}'), 'Give Up'