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/06/27 16:23:06
![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+](/uploads/image/z/5200922-2-2.jpg?t=Java%E5%8C%B9%E9%85%8D%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E7%9A%84%E5%AE%9E%E7%8E%B0%E4%BE%8B%3A%2810.0-54%29%2A45%2B%2832%2B5.4%29%2F%282%2B1%29+%E5%8C%B9%E9%85%8D%E6%88%90%3A%28+%2C10.0%2C-%2C54%2C%EF%BC%89%2C%2A%2C45%2C%2B%2C%EF%BC%88%2C32%2C%2B%2C5.4%2C%EF%BC%89%2C%2F%2C%EF%BC%88%2C2%2C%2B%2C1%2C%EF%BC%89%28%29%2B-%2A%2F%E5%9D%87%E7%8B%AC%E7%AB%8B%E5%87%BA%E6%9D%A5%2C%E6%95%B0%E5%AD%97%E5%92%8C%E5%B0%8F%E6%95%B0%E7%82%B9%E5%9C%A8%E4%B8%80%E8%B5%B7%E7%9A%84%E7%9B%B4%E5%88%B0%E9%81%87%E5%88%B0%E7%AC%A6%E5%8F%B7%E6%89%8D%E7%8B%AC%E7%AB%8B%E5%87%BA%E6%9D%A5.String+%2810.0-54%29%2A45%2B%2832%2B5.4%29%2F%282%2B)
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);
}
}
}