求解java中正则表达式

joofeng 2010-09-02 04:54:25
字符串
$${adasdad/s} ${asdasdasd} $${asdadasdasdadads/asdasdasdasd('818187a32a63b4bc012a6419a2fd0244','01201001','',' aasdasdasdaasdasd${asdasdasd} ',{asdasdads:'asdasdasdasd'})}

我想通过正则表达式 匹配出
${adasdad/s}
${asdadasdasdadads/asdasdasdasd('818187a32a63b4bc012a6419a2fd0244','01201001','',' aasdasdasdaasdasd${asdasdasd} ',{asdasdads:'asdasdasdasd'})}

请问 应该怎么写?
...全文
128 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lutinghuan 2010-09-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 closewbq 的回复:]
Java code

String str="$${adasdad/s} ${asdasdasd} $${asdadasdasdadads/asdasdasdasd('818187a32a63b4bc012a6419a2fd0244','01201001','',' aasdasdasdaasdasd${asdasdasd} ',{asdasdads:'asdasdasdasd'})}";
……
[/Quote]
这个好用!
proorck6 2010-09-03
  • 打赏
  • 举报
回复
学习中
joofeng 2010-09-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhaolinger2 的回复:]
请问你的匹配规则是什么?如果没有什么规则,倒不如直接用字符串切割的方法,没必要用正则。
[/Quote]

规则是 这样的: 匹配出形如 "${XXX/YYYY}"(不包含引号,以下同样不包含) 这样的字符串 但是 "XXX" 、"YYYY" 中 有可能嵌套 "${ZZZZ}"、"{ZZZZ}"() 结果需要的是最外层
macrotea-cn 2010-09-02
  • 打赏
  • 举报
回复
支持 closewbq!!
UPC_思念 2010-09-02
  • 打赏
  • 举报
回复
顶起。。。。。
ganchunsaixx 2010-09-02
  • 打赏
  • 举报
回复
学习了
eggno8 2010-09-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 closewbq 的回复:]

Java code

String str="$${adasdad/s} ${asdasdasd} $${asdadasdasdadads/asdasdasdasd('818187a32a63b4bc012a6419a2fd0244','01201001','',' aasdasdasdaasdasd${asdasdasd} ',{asdasdads:'asdasdasdasd'})}";
……
[/Quote]
这个好。双$后接一个{}的
closewbq 2010-09-02
  • 打赏
  • 举报
回复

String str="$${adasdad/s} ${asdasdasd} $${asdadasdasdadads/asdasdasdasd('818187a32a63b4bc012a6419a2fd0244','01201001','',' aasdasdasdaasdasd${asdasdasd} ',{asdasdads:'asdasdasdasd'})}";
Matcher m=Pattern.compile("\\$(\\$\\{.*?\\})").matcher(str);
while(m.find()){
System.out.println(m.group(1));
}
zhaolinger2 2010-09-02
  • 打赏
  • 举报
回复
这个也行


String regex = "(?<=\\$)\\$\\{.*?(\\{.*\\}.*)*\\}";
zhaolinger2 2010-09-02
  • 打赏
  • 举报
回复
试试这个


String regex = "(?<=\\$)\\$\\{.*?(\\{.*?\\}.*?)*?\\}";
zhaolinger2 2010-09-02
  • 打赏
  • 举报
回复
请问你的匹配规则是什么?如果没有什么规则,倒不如直接用字符串切割的方法,没必要用正则。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧