String regex="[^{for(\\s+)name='](.*)('\\})";
String str="{for name='user'}<a href='id=${id}'>${name}</a>{/for}";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(str);
StringBuffer buffer = new StringBuffer();
while(matcher.find()){
buffer.append(matcher.group()+"\n");
}
System.out.println(buffer.toString());
输出结果: user'}怎么回事?
是我哪里写错了吗?
搞了一天都没人解决.希望高手帮帮忙!谢谢
解决方案 »
- 关于服务嚣端跳转问题(Forward)
- 一个小程序有错,帮忙看下
- simple_list_item_multiple_choice 里边的CheckBox
- log4j的问提
- 请教问题,请各位进来看看
- jsp,javaBean中日志如何管理?log4j
- 如何从数据库中读出文件并作为附件用JAVA MAIL发送出去?
- 我想用eclipse+stuts+spring+hibernate开发个新闻系统,AddNews.jsp页面怎么开发啊.
- 请问各位大侠,怎么利用jacob,使得打开word文档时,立即选择了"工具->修订"项?谢谢
- 急:Java邮件发送程序出错
- 超简单菜鸟问题,哪位兄弟知道,单Tomcat支不支持Webservice?
- 为何在应用正式发布的时候不选tomcat
[^\\{for(\\s+)name='](.*)('\\})
应该懂我的意思吧?
改为
String regex="[^{for(\\s+)name='](.*)(?='\\})";
但是
{for name='auser'}<a href='id=${aid}'>${aname}</a>{/for}像这个匹配出来的是 user 怎么把其中的a去掉了?
这是怎么回事?
我觉得你还是先把你要实现的功能理清楚
改为String regex="(?<=\\{for(\\s{0,50})name=')(.*)(?='\\})";