有表达式(((indicator4-indicator3)>0)?"上升"+(indicator5-indicator3+indicator11):"下降"+(indicator7-indicator10-indicator12)),我想获得里面所有的indicator开头的内容
indicator4、indicator3、indicator5、indicator11等等
indicator4、indicator3、indicator5、indicator11等等
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Test {
public static void main(String[] args) {
String str = "(((indicator4-indicator3)>0)?\"上升\"+(indicator5-indicator3+indicator11):\"下降\"+(indicator7-indicator10-indicator12))";
Pattern p = Pattern.compile("indicator\\d*");
Matcher m = p.matcher(str);
while(m.find()) {
System.out.println(m.group());
}
}
}
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Test {
public static void main(String[] args) {
String str = "(((indicator4-indicator3)>0)?\"上升\"+(indicator5-indicator3+indicator11):\"下降\"+(indicator7-indicator10-indicator12))";
Pattern p = Pattern.compile("indicator\\d*");
Matcher m = p.matcher(str);
List<String> list = new ArrayList<String>();
while(m.find()) {
String s = m.gourp();
if (!list.contains(s)) {list.add(s);}
}
System.out.println(list);
}
}