求个正则表达式,急!
现在有如下格式的字符串:
-北京 2.4 1.3 12.34534 0.123 -上海 3.1 0 0 12.345 2.1 -南京………(一个横杠,加两个汉字,后边是5个实数)
我现在想提取出所有的汉字和实数,求教各位大神了,我是怎么配也配不好。。谢谢各位!!!
------解决方案--------------------------------------------------------
- Java code
public static void main(String[] args) { String s = "-北京 2.4 1.3 12.34534 0.123 -上海 3.1 0 0 12.345 2.1"; Pattern p = Pattern.compile("(\\s\\d+(\\.\\d+)?){4}"); Matcher m = p.matcher(s); while(m.find()) { int start = m.start(); int end = m.end(); System.out.println(s.substring(start-2,start)); String[] strs = s.substring(start, end).trim().split("\\s"); for(String s1:strs) { System.out.println(s1); } } }