Regex.Unescape异常

时间:2017-11-01 14:12:53

标签: c# regex escaping

以下文件夹路径作为\\SnowAngel\IcedData存储在数据库表中。但是,当从数据库中读取时,它将变为: string myFolderName = "\\\\SnowAngel\\IcedData";其中SnowAngel是服务器名称。

Regex.Unescape(myFolderName);

以上行抛出以下异常:

  

{"解析\" \\ SnowAngel \ IcedD​​ata \" - 无法识别的转义序列\ I。"}

我在这里失踪了什么?

1 个答案:

答案 0 :(得分:0)

必须处理两个解析器,第一个是C#语言,第二个是正则表达式解析器。您已经添加了多个斜杠来与C#解析器通信,这使得正则表达式解析器感到困惑。

我建议您在处理正则表达式模式时使用C#文字@。这样就不必担心C#解析器了。只需将其更改为

即可

string myFolderName = @"\\SnowAngel\IcedData";

并在正则表达式中使用它,虽然这看起来不像一个模式。