Java匹配正则表达式的实现例:(10.0-54)*45+(32+5.4)/(2+1) 匹配成:( ,10.0,-,54,),*,45,+,(,32,+,5.4,),/,(,2,+,1,)()+-*/均独立出来,数字和小数点在一起的直到遇到符号才独立出来.String (10.0-54)*45+(32+5.4)/(2+
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 14:42:20
Java匹配正则表达式的实现例:(10.0-54)*45+(32+5.4)/(2+1) 匹配成:( ,10.0,-,54,),*,45,+,(,32,+,5.4,),/,(,2,+,1,)()+-*/均独立出来,数字和小数点在一起的直到遇到符号才独立出来.String (10.0-54)*45+(32+5.4)/(2+
Java匹配正则表达式的实现
例:
(10.0-54)*45+(32+5.4)/(2+1)
匹配成:
( ,10.0,-,54,),*,45,+,(,32,+,5.4,),/,(,2,+,1,)
()+-*/均独立出来,数字和小数点在一起的直到遇到符号才独立出来.
String (10.0-54)*45+(32+5.4)/(2+1)
转为String[]
Java匹配正则表达式的实现例:(10.0-54)*45+(32+5.4)/(2+1) 匹配成:( ,10.0,-,54,),*,45,+,(,32,+,5.4,),/,(,2,+,1,)()+-*/均独立出来,数字和小数点在一起的直到遇到符号才独立出来.String (10.0-54)*45+(32+5.4)/(2+
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
public static void main(String[] args) {
Pattern pp = Pattern.compile("\\(|\\)|/|\\*|\\+|\\-|\\d*\\.\\d*|\\d*");
Matcher mm = pp.matcher("(10.0-54)*45+(32+5.4)/(2+1)");
List values = new ArrayList();
while(mm.find()){
values.add(mm.group());
}
String[] value = new String[values.size()];
values.toArray(value);
for(String str : value){
System.out.println(str);
}
}
}