怎样写一个正则表达式,能实现摘取】【之间的内容。
例如:
[头条]无奈啊!皮肤白的我总让人误会我是富家千金!
[*谁也没我白*/阅1959/回253]
[顶]广东高考同题作文:与你为邻
[摩的老人/阅395/回26]
目的达到这样效果:
无奈啊!皮肤白的我总让人误会我是富家千金!
广东高考同题作文:与你为邻

解决方案 »

  1.   


        public static void main(String[] args){
            String line = "[test]output Value";
            String value = getValue(line);
            System.out.println(value);
        }    public static String getValue(String line){
            String result = null;
            String regex = "](.*)";
            Pattern pattern = Pattern.compile(regex);
            Matcher matcher = pattern.matcher(line);
            if(matcher.find()){
                result = matcher.group(1);
            }        return result;
        }
      

  2.   

    不用循环,用replaceAll方法:
    str = str.replaceAll("\\[[^]]*\\]", "");
      

  3.   


    public static void main(String args[]){
            String s="[头条]无奈啊!皮肤白的我总让人误会我是富家千金!";
    s+="[*谁也没我白*/阅1959/回253]";
            s+="[顶]广东高考同题作文:与你为邻";
            s+="[摩的老人/阅395/回26]";

    java.util.regex.Pattern p= java.util.regex.Pattern.compile("\\](.*?)\\[");
    java.util.regex.Matcher m= p.matcher(s);
    while(m.find()){
        System.out.println(m.group(1));
    }
       }
      

  4.   

    改一下:
    java.util.regex.Pattern p= java.util.regex.Pattern.compile("\\]([^\\[]+?)\\[");