String str = "loop1: hello world!";String[] tmp = str.split(":");System.out.println(tmp[0]);   // loop1
System.out.println(tmp[1]);   // hello, world

解决方案 »

  1.   

    用程序的话,比如
    s = "loop1: hello world! loop2: hello!"
    Vector mystr=new Vector();
    i = 0;
    pos1 = 0;
    pos2 = 0;
    while(pos1 = s.indexof("loop",i)
    {
       i++;
       if (s.subString(pos+1,1)>0 && s.subString(pos+1,1)<9)
       {
           pos2 = s.indexof("loop",i);
           mystr.add(s.subString(pos1,pos2);
       }
    }
    不一定对,一个思路。
      

  2.   

    使用java中的正则表达式
    例如Pattern, PatternMatcher对象详看别人写的文章:
    http://dev.csdn.net/article/30/30807.shtm
      

  3.   

    public class Test {
        public static void main(String[] args) {
    String s = "loop1: hello world!\nloop2: hello!\n\nloop34234:234loop23423:32234";
    System.out.println("SOURCE:\n"+s+"\nTARGET:\n");
    String[] result = s.split("[\n]*loop[0-9]{1,}:");
    for(int i=0;i<result.length;i++){
    System.out.println(result[i]);
    }
    }
    }
    注意:分隔出来的result[0]无用!
      

  4.   

    要是不闲麻烦的话,可以用indexOf取出相应的符号的位置,然后把需要的字符串通过substring取出来.当然也可以用split分成数组
      

  5.   

    ^loop$[0-9]....看一看正则表达式,很方便!