80分问:怎样将此结果反红显示

ukuk 2004-08-23 09:31:03
search是前边表单中提交的数据,用正则表达式将每个空格处分开,变成一个数组args,我搜索单个字的时候可以反红显示,如果输入如"中国 北京"就无法实现了,请问如何实现.


Pattern p = Pattern.compile("[ ]+");
String[] args = p.split(search) ;
...

while(rs.next())
{
title = rs.getString("title");
String a = "<font color="+"#FF0000"+">"+search+"</font>";
temp_title = title.replaceAll(search,a);
%>
<tr bgcolor=<%=(k%2==0)?"#ffffff":"#ffffcc"%>>
<td>
<li><%=temp_title%> </td>
<td align="center"><%=rs.getDate("pub_date")%></td>
</tr>
<%
k++ ;
}
%>
...全文
78 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ukuk 2004-08-23
循环replaceAll()可输出什么?
请写个详细的好吗?包括输出.
回复
lxleaves 2004-08-23
循环replaceAll()就是
不过你要实现的东西没必要这么复杂
完全可以在客户端用js实现
回复
ukuk 2004-08-23
是啊,就是一个简单的将title关键字加色,而关键字是个String[]数组,我看api,replaceAll()方法是不接收数组转换的.
回复
lxleaves 2004-08-23
把你具体要实现的功能说出来?
仅仅将数据库中title字段的关键字加色?
回复
ukuk 2004-08-23
agen,你写的那个怎么输出,写详细一些拉,现在有些晕.

leaves,怎么会是args[i].replaceAll呢?应该是title被replace阿!
回复
lxleaves 2004-08-23
for(int i=0;i<args.length;i++){
String temp = args[i];
temp.replace****
}
我就不相信不行
回复
agen10120216 2004-08-23
String a = "<font color="+"#FF0000"+">"+search+"</font>";
temp_title = title.replaceAll(search,a);
上面换成:
String[] args = p.split(search) ;
...
...
for( int i = 0; i < args.length; i++ )
{
title.replaceAll( args[i], "<font color="+"#FF0000"+">"+args[i]+"</font>" );
}
回复
ukuk 2004-08-23
上边的叶子,我用的就是这样的方法,可惜还是不行啊!
回复
lxleaves 2004-08-23
String[] args = p.split(search) ;
for(int i=0;i<args.length;i++)***.replaceAll(search,a);
回复
ukuk 2004-08-23
晕,数组如何反红显示阿,顶以下,看看http://e.pku.edu.cn/cgi-bin/allsearch?cdtype=GB&word=中国%20北京+
就是这种得,用了正则变成数组就不可以用replaceAll方法了吗?
回复
constantine 2004-08-23
up
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2004-08-23 09:31
社区公告
暂无公告