当前页面: 开发资料首页 → JSP 专题 → 50分悬赏问题,在线等待
50分悬赏问题,在线等待
摘要: 50分悬赏问题,在线等待
一个简单的替换UBB问题
String ff="[b]dd[/b]";
String fd="[b](.*?)[/b]";
out.print(ff.replaceAll(fd,"
$1"));
输出结果:
[]dd[b]
其中 ]dd[ 为粗体, 这不是我想要的结果,应该得到粗体的dd才对啊.
改一下,加上/
String ff="[b]dd[/b]";
String fd="/[b/](.*?)/[//b/]";
out.print(ff.replaceAll(fd,"
$1"));
编译五个 illegal escape character 错误
到底为什么,哪位前辈解决了马上给分,谢谢.
帮顶。
大家帮忙啊,很着急啊,改了一天也没必出来....
没人会吗,??应该很简单吧
String ff="[b]dd[/b]";
String fd="[b](.*?)[/b]";
out.print(ff.replaceAll(fd,"[b]$1[/b]"));
楼上没有明白我的意思,
我是要替换UBB代码[b]dd[/b]成
dd
String ff="[b]dd[/b]";
String fd="//[b//]([^//[//]]*)//[/b//]";
System.out.print(ff.replaceAll(fd,"
$1"));
多谢深蓝忧郁...还有前面那位..
[]方括号转义问题,一个/是JAVA的转义,再来一个/才是正则表达式的转义,所以需要两个//转义
中间的([^//[//]]*)是什么意思呢???哪个是代表$1
中间的([^//[//]]*)表示不包含[]的字符串重复0-N次,否则要是有多个[b]dd[/b][b]dd[/b][b]dd[/b]就会当成一个处理,(括号里边的就代表$1)
多谢!!!