繁体   English   中英

正则表达式不能在asp.net(.aspx页)中工作

[英]Regex not working in asp.net(.aspx page)

我有一个正则表达式可以正常工作(当我尝试通过在线正则表达式检查网站时)。 这不应该允许1234.1234.1234.1234,但是当我在asp.net中使用它时,它甚至允许这些值。

有什么建议吗?

var ipfilter = new RegExp("(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?$)");

您使用在线正则表达式检查网站测试.NET的正则表达式吗? .NET regex与Javascript regex略有不同。

http://refiddle.com/-您可以通过从左侧的正则表达式选项中选择.NET对此进行.NET测试。

.NET正则表达式不同于JavaScript的一个极大 但是,在这种情况下,这是一个常见的问题:点必须在原义的反斜杠之前或放在字符类中。 我建议使用后者,因为它不易出错,并且您需要添加^ (字符串的开头)锚点:

var rx = "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)[.](25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)[.](25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)[.](25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?$)";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM