【发布时间】:2018-07-19 10:33:13
【问题描述】:
我需要一个匹配模式name1\name2 的正则表达式,其限制是name1 不得包含一些特殊字符,例如<、>。 name1、name2 可以有空格。
我正在使用这个正则表达式,它似乎在 java 脚本中运行良好:
/^[^ &<>;]+\\./
在我的 C 语言代码中,我使用下面的正则表达式:
var pattern= @"^[^ &<>;]+\\.";
输入 C 的尖锐结果失败:8 [ } \ ;
它传递给javascript的地方。
我怎样才能得到类似的结果?
【问题讨论】:
-
模式是等价的。它们在 JS 和 .NET 中的工作方式相同。也就是说,同样错误。或者,您提供了不正确的要求。请澄清。
-
@装饰器意味着 C# 正则表达式包含两个字符 \\ ,其中只有 \ 。 -
@AlexK。双反斜杠匹配字符串中的单个反斜杠,这不是问题。
@"\\"=/\\/. -
@AlexK。您的评论有误,请删除。
@"\."匹配一个点,而@"\\."匹配一个\和任何字符。 JS 模式匹配相同:/\\./匹配\后跟任何字符。
标签: javascript c# regex