如果在.NET中使用正規表示需要注意的是如果找尋的字串中有換行符號
如果在.NET中使用正規表示需要注意的是如果找尋的字串中有換行符號
記得使用 RegexOptions.Singleline
指定單行模式, 變更點 (.) 的意義,使它符合一切字元 (而不是 \n 之外的一切字元)
例如想要擷取SQL檔中CREATE TABLE 的語法
CREATE TABLE `a` (
`a1` varchar(10) NOT NULL default '',
`a2` varchar(10) NOT NULL default '',
`a3` varchar(10) NOT NULL default '',
PRIMARY KEY (`a1`,`a2`,`a3`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
以上是MYSQL匯出時的格式
如果使用
new Regex("CREATE TABLE (.*?);");
下去做擷取的話是抓不到任何東西的
必須要改成
new Regex("CREATE TABLE (.*?);", RegexOptions.Singleline);
我經營的論壇: 台論之星
塵世中一位載浮載沉之小小工程師