由於工作需要,學習了正規表示式匹配。從mongodb匯出的資料文字大致是這樣的:
,"lastupdate" : isodate("2015-06-04t08:21:24.307z"),
"baskets" : ,
"countrycode" : 32}]}
,"lastupdate" : isodate("2015-06-01t00:00:00z"),
"baskets" : ,
"countrycode" : 46}]}
,"lastupdate" : isodate("2015-06-05t03:49:11.131z"),
"baskets" : [, ],
"countrycode" : 46}]}
目標是將"customerid" : numberlong(4398734)轉化為"customerid" : 4398734 ,"lastupdate" : isodate("2015-06-05t03:49:11.131z")轉換為"lastupdate" : "2015-06-05t03:49:11.131z",
我使用的是notepad++編輯器的正則替換。
查詢目標的正規表示式是:"customerid" : numberlong\((.*)\)
替換為:"customerid" : \1
日期是:"lastupdate" : isodate\((.*)\)
替換為"lastupdate" : \1
"_id" : objectid\((.*)\),
為什麼是\1了?是因為我們都知道使用()是因為group的原因。
系列文章:
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
using carttools.modela;
using newtonsoft.json;
using carttools.modela.cms;
using system.io;
using system.text.regularexpressions;
namespace carttools
private void button1_click(object sender, eventargs e)
return "[" + text + "]";}}
return sb.tostring().replace(",", "\t");//excel}}
}
正規表示式 匹配
字串 void abtr quint32 ab 表示乙個正規表示式 template class bidirectionaliterator class allocator std allocator sub match bidirectionaliterator class match resul...
正規表示式匹配
請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配 解法 首先要想到用遞迴處理...
正規表示式匹配
請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配 class solutio...