我正在使用Microsoft Visual Studio在C#中编写程序,我需要程序来匹配垂直条,但是当我尝试像"\|"
那样逃避它时,它会给我一个无法识别的转义序列错误。我做错了什么?
答案 0 :(得分:3)
在C#中
string test = "\|";
会失败,因为这是一个C#字符串转义序列,并且不存在这样的转义。因为您尝试在字符串中包含反斜杠,所以需要转义斜杠,以便字符串实际包含斜杠:
string test = "\\|";
此字符串中实际存储的内容为\|
答案 1 :(得分:3)
获得无法识别的转义序列的原因是反斜杠在C#字符串文字和正则表达式中用作转义字符。
您有几种方法可以解决此问题:
@"\|"
或"\\|"
或[|]
第三个是我个人最喜欢的,因为它不需要计算反斜杠。
答案 2 :(得分:0)
该字符串正在处理“\ |”作为C#中的转义管道。试试“\ |”为了逃避\正则表达式实际上看到了\ |你想要的。