不能用replace的方法,它只替换单个字符,我给你一段代码吧:两个方法,你看一下。或是放到一个类里。/**
把回车换行替换成<br>@param source 待处理的源字串
@return 已将"\r\n"替换成"<br>"的字串
*/
public static String nl2br(String source)
{
return replace("\r\n","<br>",source);
}
/**
把haystack中的needle替换成str@param haystack 待处理的源字串
@param needle 要被取代的字串
@param str 替换成str字串
@return 已处理的字串
*/
public static String replace(String needle,String str,String haystack)
{
if (haystack == null)
{
return null;
}
int i=0;
if ( ( i=haystack.indexOf( needle, i ) ) >= 0 )
{
char [] line = haystack.toCharArray(); //把字串类转成字符数组
char [] newString = str.toCharArray();
int needleLength = needle.length();
StringBuffer buf = new StringBuffer(line.length);
buf.append(line, 0, i).append(newString);
i += needleLength;
int j = i;
while( ( i=haystack.indexOf( needle, i ) ) > 0 )
{
buf.append(line, j, i-j).append(newString);
i += needleLength;
j = i;
}
buf.append(line, j, line.length - j);
return buf.toString();
}
return haystack;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货