所以我基本上是想创建一个搜索按钮。
此搜索正在使用REGEX。
我认为我说得对,但它不起作用,有人可以告诉我出错的方式/地点,不用年龄编码......
public void SearchFunction(string searchtext)
{
SupporterId();
ReferenceNumber();
ConsignmentNumber();
}
private static void SupporterId()
{
const string sId= "";
var supporterId = Regex.IsMatch(sId, @"^[A-F,S,R][0-9]{3,6}$", RegexOptions.IgnoreCase);
}
private static void ReferenceNumber()
{
const string refNumber = "";
var referenceNumber = Regex.IsMatch(refNumber, @"^[ABN158][0-9]{6,17}$", RegexOptions.IgnoreCase);
}
private static void ConsignmentNumber()
{
const string conNumber = "";
var consignmentNumber = Regex.IsMatch(conNumber, @"&[0-9]{14}$", RegexOptions.IgnoreCase);
}
}
}
这些是我的正则表达式,这是我背后的代码..
protected void CheckStateClick(object sender, EventArgs e)
{
ConsignmentSearch();
}
private void ConsignmentSearch()
{
var searchclass = new RegexMethods();
searchclass.SearchFunction(txtReferenceNumber.Text);
}
任何人都可以告诉我我哪里出错了,我怎么能解决它,请不要告诉我哦你错过了这个然后不要告诉我如何解决它。
如果你能告诉我如何/需要添加修复的例子:在这里添加这行代码....< >
请,谢谢你。
__ 这就是错误 测试'M:DeliveryInputSystem.Default.AddBox_Click(System.Object,System.EventArgs)'失败:对象引用未设置为对象的实例。 System.NullReferenceException:未将对象引用设置为对象的实例。 Default.aspx.cs(113,0):在DeliveryInputSystem.Default.AddBox_Click(Object sender,EventArgs e)
答案 0 :(得分:0)
我可能错了,但看起来你只是检查空字符串...... 如何检查您的搜索文本:
public void SearchFunction(string searchtext)
{
SupporterId(searchtext);
ReferenceNumber(searchtext);
ConsignmentNumber(searchtext);
}
private static void SupporterId(string sId)
{
var supporterId = Regex.IsMatch(sId, @"^[A-F,S,R][0-9]{3,6}$", RegexOptions.IgnoreCase);
}
private static void ReferenceNumber(string refNumber)
{
var referenceNumber = Regex.IsMatch(refNumber, @"^[ABN158][0-9]{6,17}$", RegexOptions.IgnoreCase);
}
private static void ConsignmentNumber(string conNumber)
{
var consignmentNumber = Regex.IsMatch(conNumber, @"&[0-9]{14}$", RegexOptions.IgnoreCase);
}
但是,如果我正确理解您的代码,您的searchtext变量只包含txtReferenceNumber.Text文本,因此您只应在其上运行ReferenceNumber(字符串搜索文本)方法。
答案 1 :(得分:0)
您提供了错误文字:
__ THIS IS THE ERROR Test'
M:DeliveryInputSystem.Default.AddBox_Click(System.Object,System.EventArgs)' failed:
Object reference not set to an instance of an object.
System.NullReferenceException:
Object reference not set to an instance of an object.
Default.aspx.cs(113,0): at DeliveryInputSystem.Default.AddBox_Click(Object sender, EventArgs e)
有书面错误原因:NullReferenceException
以及它出现在哪里Default.aspx.cs(113,0)
。您需要在113
中的Default.aspx.cs
行中分析其中的内容,以及为什么会导致NullReferenceException
。
如果您不知道从哪里开始,请从文档开始。根据{{3}}:
当您尝试访问值为null的类型的成员时,抛出NullReferenceException异常。
你经常有一个例子:
1: List<String> names;
2: if (sth) names = new List<String>();
3: names.Add("Major Major Major")
如果sth
为false
,则不会为names
分配任何实例,并且会抛出异常。