问:
java 中将字符串中运算符之间的变量截取出来 例如:Stirng str=“a+b*c/d”;
获取出a,b,c,d放入数组中
问题补充:正则表达式
答:
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args){ String str="a+b*c/d"; Pattern p=Pattern.compile("[a-z]");//定义一个正则表达式的匹配规则 Matcher m=p.matcher(str); //进行匹配 String [] value=new String[4];//定义一个数组 int i=0;//数组下标 while(m.find()){// 是否寻到匹配字符 System.out.PRintln("寻到的结果 "+m.group()); value[i]=m.group();//添加到数组中 i++;//下标加1 } //输出数组元素 for(int j=0;j<value.length;j++){ System.out.println("value["+j+"] =" +value[j]); } } }
原文链接:http://www.knowsky.com/545870.html
替换换行为空格:原文链接:http://www.android100.org/html/201503/05/124885.html
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author lei * 2011-9-2 */ public class StringUtils { public static String replaceBlank(String str) { String dest = ""; if (str!=null) { Pattern p = Pattern.compile("\\s*|\t|\r|\n"); Matcher m = p.matcher(str); dest = m.replaceAll(""); } return dest; } public static void main(String[] args) { System.out.println(StringUtils.replaceBlank("just do it!")); } /*----------------------------------- 笨方法:String s = "你要去除的字符串"; .去除空格:s = s.replace('\\s',''); .去除回车:s = s.replace('\n',''); 这样也可以把空格和回车去掉,其他也可以照这样做。 注:\n 回车(\u000a) \t 水平制表符(\u0009) \s 空格(\u0008) \r 换行(\u000d)*/ }