0

我的输入String如下,

{"string name"=hi;"id"=44401234;"string name"=hey;"id"=87695432.....}

我只想要 id 作为输出,例如,{44401234 87695432}

        for(int i=0;i<input.length();i++)
          {
               int index=input.indexOf("id");
               hh=input.substring(index+4,index+12);
               System.out.println(hh);
          }
4

1 回答 1

0

下面的代码使用正则表达式来获取与 id 关联的值

尝试

import java.util.regex.Matcher;
import java.util.regex.Pattern;

      public class Test {
            public static void main(String[] args) {
                String input = "{\"string name\"=hi;\"id\"=44401234;\"string name\"=hey;\"id\"=87695432.....}";
                Pattern pattern = Pattern.compile("\"id\"=[0-9]{8}");
                Matcher m = pattern.matcher(input);
                while (m.find()) {
                    String str = m.group();
                    str = str.replace("\"id\"=", "");
                    System.out.println(str);
                }
            }

        }
于 2013-10-13T05:53:41.977 回答