search

Home  >  Q&A  >  body text

java 如何处理指定格式的字符串数据?

Class1:[null][null][null][null][null][null][null]
Class2:[null][null][null][null][null][null][null]
Class3:[null][null][null][null][null][null][null]
Class4:[null][null][null][null][null][null][null]
Class5:[null][null][null][null][null][null][null]
Class6:[null][null][null][null][null][null][null]
Class7:[null][null][null][null][null][null][null]
Class8:[null][null][null][null][null][null][null]

请问这样的数据,想读取每个'[' ']'之间的内容,如何读取?
使用正则表达式么?


        String claLine = null; //一行数据
        String claItems = null;
        
        //文件读取操作
        while((claLine = br.readLine()) != null){
            
            claItems = claLine.substring(7);
            //如何读取每个中括号中的数据啊?
        }


高洛峰高洛峰2953 days ago558

reply all(1)I'll reply

  • 三叔

    三叔2016-11-11 13:34:08

    不是特别熟悉正则,不过下面有一种实现方式:

        public List extract(String line) {
            Pattern p = Pattern.compile("\\[.*?\\]");
            Matcher m = p.matcher(line);
            List result=new ArrayList();
            while(m.find()){
                result.add(m.group().replaceAll("\\[|\\]", ""));
            }
            return result;
        }

    先提取出所有的[...], 然后再将每个字符串中的[]替换成“”

    reply
    0
  • Cancelreply