`Class1:nullnullnull[null]
Class2:nullnullnull[null]
Class3:nullnullnull[null]
Class4:nullnullnull[null]
Class5:nullnullnull[null]
Class6:nullnullnull[null]
Class7:nullnullnull[null]
Class8:nullnullnull[null]`
请问这样的数据,想读取每个'[' ']'之间的内容,如何读取?
使用正则表达式么?
String claLine = null; //一行数据
String claItems = null;
//文件读取操作
while((claLine = br.readLine()) != null){
claItems = claLine.substring(7);
//如何读取每个中括号中的数据啊?
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
不是特别熟悉正则,不过下面有一种实现方式:
public List<String> extract(String line) {
Pattern p = Pattern.compile("\\[.*?\\]");
Matcher m = p.matcher(line);
List<String> result=new ArrayList<String>();
while(m.find()){
result.add(m.group().replaceAll("\\[|\\]", ""));
}
return result;
}
先提取出所有的[...], 然后再将每个字符串中的[]替换成“”