日期:2014-05-19  浏览次数:20789 次

正则表达式
下面这个正则啥意思 请正则高手请教: 
String regex = "\\s*`([^`]*)`\\s*(\\w+[^ ]*)\\s*(NOT\\s+NULL\\s*)?(DEFAULT\\s*([^ ]*|NULL|'0'|''|CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)\\s*)?(COMMENT\\s*'([^']*)')?\\s*,\\s*";

------解决方案--------------------
例如:
`funName` varchar(128) NOT NULL COMMENT '权限名称',
能匹配上
------解决方案--------------------
sql 建表语句 类似下面这种
SQL code


CREATE TABLE `pw_weibo_item` (

  `iid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '分享id',

  `mid` int(10) unsigned NOT NULL COMMENT '微博id',

  `uid` int(10) NOT NULL DEFAULT '1',

  `ptid` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '合作伙伴id,0为自己',

  `item_title` varchar(50) DEFAULT NULL COMMENT '标题',

  `item_pic` varchar(200) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '图片',

  `item_price` smallint(5) unsigned DEFAULT '0' COMMENT '价格',

   `item_tag` varchar(200) DEFAULT NULL COMMENT '标签',

  `item_url` varchar(200) DEFAULT NULL COMMENT '链接',

  `item_top_pic` varchar(200) NOT NULL COMMENT '宣传图片,系统生成,用于在微博传播',

  `item_content` varchar(500) DEFAULT NULL COMMENT '内容,推荐理由',

  `add_time` datetime DEFAULT NULL COMMENT '添加时间',

  PRIMARY KEY (`iid`),

  KEY `mid` (`mid`)

) ENGINE=MyISAM AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC COMMENT='微博商品分享'

------解决方案--------------------
0或多个空格+ 单引号 + 任何不是单引号字符0或多个 + 单引号 + 0或多个空格 + 字符最少一个 + 非空格字符0或多个 + 0或多个空格 + (NOT 0或多空格 NULL 0或多个空格)最多一次 + (DEFAULT 空格 非空格字符n个或NULL或'0'或''或CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 0或多个空格)最多一次+(COMMENT 空格 ' 非单引号字符0或多个 ')最多一次 空格0或多个 逗号 空格0或多个

也就是说
'string123-/*' 123456789abcd_sdllzkej)% NOT NULL ,
或者
'sldkgn88'123aldkjf DEFAULT'' COMMENT '' ,
或者
'string123-/*' 123f ,
之类