求正则
String str = "str(ET0.a)+ET1.b+substring(ET2.C,1,2) ";
String str = "Str(datatime(ET1.b))+substring(ET2.b)
我想取出这样规则的串里面的ET0.a ET.b ,
用正则怎么取呢?
规则是:以ET开头,以+ - * / ) , 任何一个结尾
------解决方案--------------------ET[\.\w]*
------解决方案--------------------貌似是四则运算直接String.split( "[+-*/] ")。得到数组。然后去掉ET.
------解决方案-------------------- Pattern p=Pattern.compile( "ET.+?(?=[+\\-\\*/\\),]) ");
String str = "str(ET0.a)+ET1.b+substring(ET2.C,1,2) ";
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group());
}
------解决方案--------------------楼上正解