正则表达式查询实现

时间:2013-02-15 11:26:59

标签: c# asp.net regex

我正在尝试检查搜索框,这是我的查询,但有一些问题。

 // =================================
 var check = new Regex("[^A-Za-z]");
 Match m = check.Match(searchQuery);
 if (m.Equals(check) != true)
 {
     pnl_Message.Visible = true;
     pnl_Message.CssClass = "messageTable";
     lbl_message.Text = " * Only Letters are allowed";
  }

If语句Equals说可疑比较!
 但是有效!因为无论我设置什么表达式,它总是出现在if语句中。

我应该如何查询searchQuery?

2 个答案:

答案 0 :(得分:1)

您的Equals正在将MatchRegex进行比较 - 它们是不同的类,因此它永远不会成立,并且您始终会进入if区块。< / p>

你可能想要if (m.Success) - 检查check.Match(...)返回的值是否成功匹配(即输入包含非字母)。

答案 1 :(得分:0)

您正在使用Object的{​​{1}}方法,该方法是Equals的基类

使用Regex类的IsMatch方法,即Regex