C# 正则表达式本地错误"unrecognized escape sequence \d.",但在生产环境中工作



我在这里面临着奇怪的情况,即正则是在生产中工作的,但在本地行不通。

在代码的一部分中,我们需要为Regex创建HTML标签元素。因此,有此方法接收一个字符串作为参数(The Regex(并进行一些处理。处理之一是取消escape收到的参数。

我的麻烦发音线字符串是:@"^ *P.d{3}"期望获得模式:p。###

使用正则码的代码为:System.Text.RegularExpressions.Regex.Unescape(regex);

在生产中运行正常,但是在本地我面临的例外情况:parsing " P.d{3}" - Unrecognized escape sequence d.

本地,我尝试了这两个代码,并且都引发了错误:

System.Text.RegularExpressions.Regex.Unescape(@"*P.d{3}");
System.Text.RegularExpressions.Regex.Unescape("*P\.\d{3}");

生产服务器如何可以拆除此正则票据,而不是我的本地计算机?

我认为方法unescape((不能pars d

所以,您可以使用此信息:

System.Text.RegularExpressions.Regex.Unescape(" *P\.") + "\d{3}";

System.Text.RegularExpressions.Regex.Unescape(" *P\.[0-9]{3}");

更多信息

相关内容

最新更新