字符串:String exp = sin(30)+cos(20)+8-9我想把三角函数作为分隔符 正则表达式为 String reg = "^([a-zA-Z0-9_]+)\\(([a-zA-Z0-9_.()]+)\\)$";我想通过 String[] sArray = exp.split(reg,exp);我希望数组结果是这样的
sin(30)
+
cos(20)
+8-9
可是为什么截取不了呢 请大家看看!
sin(30)
+
cos(20)
+8-9
可是为什么截取不了呢 请大家看看!
String exp = "sin(30)+cos(20)+8-9";
String[] sArray = exp.split("(?<=[)+])(?=\\D)");
System.out.println(Arrays.toString(sArray));
public static void main(String[] args) {
String str = "sin(30)+cos(20)+8-9";
String[] arry = str.replaceAll("(?<=\\))([+-/*])(?=[a-z])", ",$1,")
.replaceAll("(?<=\\))(.{1})(?=\\d)", ",$1")
.split(",");
for (String string : arry) {
System.out.println(string);
}
}
conslesin(30)
+
cos(20)
+8-9