我想实现这样的查询
比如在textbox控件里拷贝一个字符串“城市化进程中污染物的排放与时空分布特征”,假如我的数据库的数据表里有“城市化进程中污染物的”这样的字符串,而“排放与时空分布特征”我的数据表里没有,请问怎么实现将数据表里有的字符串写到listbox1控件里,将数据表里没有的字符串写到listbox2控件里
比如在textbox控件里拷贝一个字符串“城市化进程中污染物的排放与时空分布特征”,假如我的数据库的数据表里有“城市化进程中污染物的”这样的字符串,而“排放与时空分布特征”我的数据表里没有,请问怎么实现将数据表里有的字符串写到listbox1控件里,将数据表里没有的字符串写到listbox2控件里
或者你可以试着用空格来区分关键词然后like %关键词1% or like %关键词2%
然后用数据库的数据截去textbox的数据,就是listbox1值了(截去后的值判断是否为空)。
string b = "abcdefghhkhkjkhkh";
string s = b.Replace(a, "");
this.txtName.Text = s;
给分
private void button1_Click(object sender, EventArgs e)
{
string totalstr = label1.Text;
int wholelength = 0;
//看搜索的字符串哪个长一些
if (totalstr.Length <= textBox1.Text.Length)
{
wholelength = totalstr.Length; //具体两种情况:部分相同、包含
for (int x = 0; x < wholelength; x++)
{
if (textBox1.Text[x] == totalstr[x])
{
listBox1.Items.Clear();
listBox2.Items.Clear();
//解决包含问题(即数据库中为“12345”,textbox为“12”)
listBox1.Items.Add(totalstr.Substring(0, wholelength));
listBox2.Items.Add(totalstr.Substring(wholelength, totalstr.Length - wholelength));
}
else//只能结局部分相同问题(即数据库中为“12345”,textbox为“13332”)
{
listBox1.Items.Clear();
listBox2.Items.Clear();
listBox1.Items.Add(totalstr.Substring(0,x));
listBox2.Items.Add(totalstr.Substring(x,totalstr.Length-x));
break;
}
}
}
else
{
wholelength = textBox1.Text.Length;
//具体两种情况:部分相同、包含
for (int x = 0; x < wholelength; x++)
{
if (textBox1.Text[x] == totalstr[x])
{
listBox1.Items.Clear();
listBox2.Items.Clear();
//解决包含问题(即数据库中为“12345”,textbox为“12”)
listBox1.Items.Add(totalstr.Substring(0, wholelength));
listBox2.Items.Add(totalstr.Substring(wholelength, totalstr.Length - wholelength));
}
else
{
listBox1.Items.Clear();
listBox2.Items.Clear();
listBox1.Items.Add(totalstr.Substring(0, x));
listBox2.Items.Add(totalstr.Substring(x, totalstr.Length - x));
break;
}
}
}
}
string totalstr = label1.Text;
这句代码,问题出在我怎么根据textbox中输入的文字查数据库呢,你比如我在textbox中输入“以水土流失、土地三化、大面积沙尘暴频发等为代表的生态环境退化对中国社会经济的可持续发展构成了严重的威胁”这句话,假如我的词库里有这些词
以水土流失
以水土流失、
以水土流失、土地三化
以水土流失、土地三化、大面积
以水土流失、土地三化、大面积沙尘暴频发等
...
不好查库呀,totalstr这个字符串就定不下来,不好比较了