最近项目中大量使用了DataReader,却没有很好的关闭该DataReader所占用的Connection,致使网站返问不了。最后又把DataReader方式改成了DataAdapter方式。在代码中需要替换很多如dr["Field"].ToString()为ds.Tables[0].Rows[0]["Field"].ToString()之类。一个个改显然很麻烦,于是选择了使用正则,经过一段时间摸索,发现在VS的文本编辑器中使用正则跟JS的有点稍微不同。现总结如下:
1. 在VS中使用{pattern}来标记表达式,而在JS中是使用(pattern)
2. 在VS中使用匹配的引用,不能用$0...$9,而是只能使用\n方式,而且\0代表是的整个表达式的匹配内容,\1代表的是第一个标记表达式的内容(这点跟JS应该相同,可能以前没注意到)。
例子如下:
dr\[{.*}\] -> ds.Tables\[0\].Rows\[0\]\[\1\]