【问题标题】:parsing "(" - Not enough )'s解析“(” - 不够)的
【发布时间】:2015-08-24 17:20:51
【问题描述】:
killer = killer.Replace("(", "\(");

试图在左大括号前放一个 '\',它显示“错误 1 ​​无法识别的转义序列”

我也尝试在它前面加上一个“@”,但这会导致两个反斜杠。

【问题讨论】:

  • " 导致两个反斜杠" - 如果您在调试器中查看结果,然后意识到 debugger 添加了第二个反斜杠,因此您知道它不是转义序列。 actual 字符串将只包含一个反斜杠。

标签: c# regex parsing compiler-errors


【解决方案1】:

使用双反斜杠。

killer = killer.Replace("(", "\\(");

【讨论】:

  • killer = killer.Replace("(", @"\\(");
  • 你不需要使用双重` escape if you prefixed it with @`。
【解决方案2】:

根据您收到的错误,您似乎正在尝试转义正则表达式模式。 Regex 类有内置函数来转义它们。

Regex.Escape("(") 产生\(

【讨论】:

    猜你喜欢
    • 2015-08-27
    • 1970-01-01
    • 2015-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    • 2018-02-10
    • 1970-01-01
    相关资源
    最近更新 更多