【发布时间】:2012-03-10 05:39:40
【问题描述】:
我正在使用以下表达式。
\W[A-C]{3}
目标是匹配 A 和 C 之间没有任何字符的任何字符的 3 个字符。因此,输入“ABC”匹配但“DABC”不匹配。
当我使用各种在线正则表达式工具(例如http://gskinner.com/RegExr/)尝试这个表达式时,它可以完美运行。当我尝试在 asp.net RegularExpressionValidator 或 RegEx 类中使用它时,它永远不会匹配任何东西。
我尝试了各种不同的方法来禁止在比赛前出现字符。例如。
[^\w] and [^a-zA-Z0-9]
都可以在在线工具中使用,但不能在 .net 中使用。
这个测试失败了,但我不知道为什么?
[Test]
public void RegExWorks()
{
var regex = new Regex("\\W[A-C]{3}");
Match match = regex.Match("ABC");
Assert.IsTrue(match.Success);
}
【问题讨论】:
标签: c# asp.net regex validation