正則表達式

正則表達式

 String sql = "INSERT INTO AB(A,B,C,D,E) VALUES(?,?,?,?,?)";
 sql = sql.toUpperCase();
 String str=" \\s*INSERT\\s+INTO\\s+([^\\(]+)\\(([^\\)]+)\\)\\s*VALUES\\s*\\(([^\\)]+)\\)\\s*";
 Pattern p = Pattern.compile(str);
 Matcher m = p.matcher(sql);
 m.find();
 String table = m.group(1);
 String cols = m.group(2);
 String values = m.group(3);
 System.out.println("table ==== " + table); //AB
 System.out.println("cols ==== " + cols); //A﹐B﹐C﹐D﹐E
 System.out.println("values ==== " + values); //﹖﹐﹖﹐﹖﹐﹖﹐﹖

註﹕.表示任何字符
      [abc]表示abc之一字符
      [^abc]表示非abc的一字符
      \s表示空格﹐tab,換行﹐換頁﹐回車
     \S表示非空格﹐tab,換行﹐換頁﹐回車
    \d表示數字[0-9]
    \D表示非數字[^0-9]
   \w表示詞字符[a-zA-Z0-9]
   \W表示非詞字符[^a-zA-Z0-9]
 
匹配量詞   X? 表示1或0個X
                  X* 表示0或n個X
                  X+表示1或n個X

java lover

你可能感兴趣的:(正則表達式)