日期:2014-05-19  浏览次数:20724 次

一个关于搜索的问题,忘高手指教
现在我有这么一个需求。
有一个list,存有所有图片的名称(如:EB874657463212.jpg),在jsp页面有一个搜索框,在里面可以填入图片的名称(名称不带有后缀,如:EB874657463212),点击搜索,可以在list当中把对应的图片搜索出来,搜索结果只用返回图片名称就可以了,不用显示图片。另外,这是精确搜索,还有就是希望可以根据开头的两个字母搜索,将所有以“EB”、“FA”这样开头的图片全部显示出来,也是只显示文件名,不用显示后缀。
我现在的思路是,首先要对list里面的元素进行处理,把后缀去掉,因为搜索传入的只有名称,而不带“.jpg”后缀。
但是关键的搜索我不知道如何实现。其实应该就是一个匹配的功能。还有很重要的一点,这颗不是去数据库 里面搜索,这是搜索list里面的元素,并且把那条元素提出来。忘高手指点啊。有代码最好了,即使是只有“搜索”的代码也万分感谢啊。

------解决方案--------------------
探讨

引用:
public static void getTrue(List<String> values ,List<String> trueChars){

for (String string : values) {
for (String trueChar : trueChars) {
if (string.indexOf(trueChar) == 0) {
Sy……

------解决方案--------------------
//你查询出来的list集合
List<Student> list=session.createQuery("From Student").list();
//模糊查询传进来的字符串
String name="0";

for(Student s:list)
{
System.out.println("截取前姓名:"+s.getStuName());

int len=s.getStuName().length()-4;
String str=s.getStuName().substring(0, len);
System.out.println("截取后姓名:"+str);

int s1=s.getStuName().indexOf(name);
if(s1>0)
{
System.out.println("模糊查询名:"+str);
}
}