问题描述
String s = "|C:|Documents and Settings|hanjinyu|桌面|{B7829D97-7AB5-4C96-84A8-2F728042F165}.bmp|"取出'|'与'|'之间不为空的值,存入String[]中.哪位神能搞一个很简单的方法,贴下,谢谢了~
解决方案
org.apache.commons.lang.StringUtils.split(s, '|')使用工具类 如apache的commons-lang
解决方案二:
String[] arr = s.split("\|",-1);重新整理下数组,大概就是你想要的结果
解决方案三:
不用正则String s = "|C:|Documents and Settings|hanjinyu|桌面|{B7829D97-7AB5-4C96-84A8-2F728042F165}.bmp|";List<String> list = new ArrayList<String>();StringBuffer sb = new StringBuffer();for(int i=0;i<s.length();i++){ if(s.charAt(i)=='|'){ if(!"".equals(sb.toString())) list.add(sb.toString()); sb.delete(0, sb.length()); }else{ sb.append(s.charAt(i)); }}
时间: 2024-11-05 16:36:44