java中,如何得到这样的正则表达式?
有一串字符串(String_value),里边可能包含下边四行的任意一行或者几行内容,程序如下:{$GetInformation({$CSDN_Java({$J2SE},{$J2ME({$Nono},{$Parameter(sp,1)},3)})},{$Parameter})}
{$Parameter(sp,1)}
{$Parameter}
如何写正则表达式?private Map xxx() {
    Pattern pattern = Pattern.compile("这个如何写",Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(String_value);
    
}

解决方案 »

  1.   

    表达式:
    \{\$([^{}]|\{\$([^{}]|\{\$([^{}]|\{\$([^{}]||\{\$[^{}]*\})*\})*\})*\})*\}测试工具:
    http://www.regexlab.com/zh/workshop.asp?pat=%5C%7B%5C%24%28%5B%5E%7B%7D%5D%7C%5C%7B%5C%24%28%5B%5E%7B%7D%5D%7C%5C%7B%5C%24%28%5B%5E%7B%7D%5D%7C%5C%7B%5C%24%28%5B%5E%7B%7D%5D%7C%7C%5C%7B%5C%24%5B%5E%7B%7D%5D*%5C%7D%29*%5C%7D%29*%5C%7D%29*%5C%7D%29*%5C%7D&txt=%7B%24GetInformation%28%7B%24CSDN_Java%28%7B%24J2SE%7D%2C%7B%24J2ME%28%7B%24Nono%7D%2C%7B%24Parameter%28sp%2C1%29%7D%2C3%29%7D%29%7D%2C%7B%24Parameter%7D%29%7D%0D%0A%7B%24Parameter%28sp%2C1%29%7D%0D%0A%7B%24Parameter%7D&dlt=0关于本题的 "递归表达式" 更多说明:
    http://www.regexlab.com/zh/regtopic.htm关于正则表达式文档:
    http://www.regexlab.com/zh/regref.htm
      

  2.   

    当然,把表达式写在 java 源代码中的时候,要用 \\ 来书写表达式中的 \