正则表达式用正斜杠替换

时间:2013-03-13 16:13:56

标签: c# regex

有人可以解释一下如何让这个正则表达式工作吗?我正试着拿这个字符串:

"Test0/1"

并将其转换为:

"Test0\/1"

我正在使用它,但它不起作用:

var test = Regex.Replace("Test0/1", @"/", @"\/");

它一直在给我

"Test0\\/1"

然后我想获取字符串的结果并将其放入Regex语句中,如下所示:

var match  = new Regex(test).Match(myString);

因此字符串'test'必须是有效的正则表达式语句。

基本上我要做的是从设备中获取接口列表,从中创建一个正则表达式语句,然后使用该正则表达式来比较我的代码中的其他内容的结果。由于接口的格式为“FastEthernet0 / 1”,例如,它导致我的正则表达式失败,因为你必须转义所有正斜杠。我必须动态构建这个正则表达式,因为每个设备都有不同的接口集。

1 个答案:

答案 0 :(得分:2)

这是Visual Studio自动代表您转义\的功能。请看以下问题:What's the use/meaning of the @ character in variable names in C#?。从@移除@"\"符号会将字符串转换为"\\"