将正则表达式传递给变量(角度)

时间:2016-05-16 15:24:37

标签: angularjs regex razor

我有这样的代码ng-init="validationRegex = '@RegularExpression.expression'",其中RegularExpression.expression是c#string variable = "(\w+\/|\w+\\)+(\w+)\.\w+"。我想使用ng-init将变量值传递给角度控制器。但最后我得到(w+/|w+\)+(w+).w+。我怎样才能获得正确的价值?

2 个答案:

答案 0 :(得分:0)

我认为您的C#代码实际上是:@"(\w+\/|\w+\\)+(\w+)\.\w+"@避免需要邪恶逃脱。

在这种情况下,您可能需要使用邪恶的转义逃生。请注意,如果您将其直接放在字符串中,则无需转义/(如果您按照我的想法使用它)。您还可以使用大括号来最小化转义。所以你可以拿这个正则表达式:

(\w+/|\w+\\)+(\w+)[.]\w+

并将其传递给regex planet以获取此信息:

"(\\w+/|\\w+\\\\)+(\\w+)[.]\\w+"

我不推荐手动转换,因为你已经有了反斜杠。

答案 1 :(得分:0)

使用以下方法双重转义字符串:

@RegularExpression.expression.Replace(@"\", @"\\")

当它在JavaScript方面出现时,它将再次被单独转义。

相关问题