有这样一个字符串,由若干"&&","||"和其他字符串组成。例如:"a&&b&&c||d&&e||f"。现在需要把其中的"&&"和"||"按顺序抽取出来,放到一个数组里,则上述示例字符串的对应数组是:{"&&","&&","||","&&","||"}
请问各位,有什么好的算法吗? private String[] getArray(String str){}
String[] arr = getArray("a&&b&&c||d&&e||f");
请问各位,有什么好的算法吗? private String[] getArray(String str){}
String[] arr = getArray("a&&b&&c||d&&e||f");
Pattern, Matcher
如果这样分割,得到的是恰恰相反的结果。您的意思是怎么的呢?
public static void main(String[] args) {
String s="a&&b&&c||d&&e||f";
String[] ss=s.split("[A-Za-z0-9]");
List list = new ArrayList();
for(String sss:ss){
if(!sss.equals("")){
list.add(sss);
}
}
System.out.println(list);
}
String arr[] = str.split(""[A-Za-z]"");
Matcher m = Pattern.compile("\\|\\||&&").matcher(str);
List<String> arr = new ArrayList<String>();
while (m.find()) {
arr.add(m.group());
}
String s="a&&b&&c||d&&e||f哈哈";
Matcher m = Pattern.compile("\\|\\||&&").matcher(s);
List list = new ArrayList();
while (m.find()) {
list.add(m.group());
}
System.out.println(list);
}不知道有没有其他的,比如|,&之类的