【问题标题】:Regex replace multiple characters in one go [closed]正则表达式一次性替换多个字符[关闭]
【发布时间】:2014-02-22 19:45:35
【问题描述】:

假设我有一个字符串:Something [one] {to} 'three' 现在我需要更换

  • [\[
  • }\}
  • '\'

等等

我正在使用 C#。

谢谢

【问题讨论】:

    标签: c# regex replace


    【解决方案1】:

    Regex.Escape Method

    通过将一组最小字符(\、*、+、?、|、{、[、(,)、^、$、.、# 和空格)替换为它们的转义码来转义它们。这指示正则表达式引擎按字面意思解释这些字符,而不是元字符。

    【讨论】:

      【解决方案2】:

      如果您想纯粹使用正则表达式来执行此操作,则可以先行匹配特殊字符并将其替换为反斜杠。

      s/(?=[\[\]'])/\\/g
      

      字符类应包含您要转义的所有字符。这也让您可以更好地控制要替换的字符。

      【讨论】:

      • Regex.Escape 现在解决了我的问题,但仍然很高兴知道您的解决方案。 +1 和谢谢 :)
      • 很高兴为您服务。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多