唉,真是烦死啦,再次紧急求助一个极为复杂的正则表达式 现在有一个字符串“马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)”,能否有办法把这个字符串进行分割变为马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)先谢谢大家!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void main(String[] args) { String str = "马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)"; String arr[] = str.split("(?<=\\(\\d\\).\\(\\d\\))"); for(String s : arr){ System.out.println(s); } } Pattern p = Pattern.compile("[\u4E00-\u9FFF a-z A-Z]*(↑|↓)\\(\\d\\)(↑|↓)\\(\\d\\)"); Matcher m = p.matcher("马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)"); while (m.find()) { System.out.println(m.group()); }试试看 (?<=exp) 匹配exp后面的位置 没想到还可以这么用。一直以为只能matcher。不知道split按什么分隔? 2楼规则我觉得可以参照这里http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html 这个程序请帮我改一下错 ImageMagick如何使用呢? 北京XX公司(广州分公司)笔试题 while中为什么执行String ss="dfdfdf";就出错? 求助这是什么问题? 一个java入门级别的指导 有没有办法将Java App与JVM一起打包? 为什么我Start Default Console,浏览器里显示找不到阿 关于JDBC IM如何保证消息可靠投递 怎么提交数据哦? 一个数组越界异常,请帮我一下
public static void main(String[] args) {
String str = "马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)";
String arr[] = str.split("(?<=\\(\\d\\).\\(\\d\\))");
for(String s : arr){
System.out.println(s);
}
}
Pattern p = Pattern.compile("[\u4E00-\u9FFF a-z A-Z]*(↑|↓)\\(\\d\\)(↑|↓)\\(\\d\\)");
Matcher m = p.matcher("马五↑(3)↓(1)盒↓(8)↑(3)井↓(8)↑(3)油↓(8)↑(3)WELLID↓(2)↑(3)"); while (m.find()) {
System.out.println(m.group());
}试试看
没想到还可以这么用。一直以为只能matcher。
不知道split按什么分隔?
http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html