正則表達式

 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

posted on 2006-08-03 15:26 software5168 阅读(513) 评论(0)  编辑  收藏 所属分类: Java學習


只有注册用户登录后才能发表评论。


网站导航:
 
<2006年8月>
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

导航

统计

常用链接

留言簿(3)

随笔分类

随笔档案

收藏夹

JAVA學習網站

綜合

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜