以编程方式在代码中查找连接字符串

时间:2009-06-23 15:14:05

标签: regex asp-classic string connection

似乎是一个相当简单的问题。我想查看大约6gb的内容和经典的asp代码,并找到任何看起来像连接字符串的东西。问题是,连接字符串以十几种不同的方式格式化。

我正在考虑使用正则表达式来查找“catalog =”或“password =”等特定属性。

4 个答案:

答案 0 :(得分:3)

你不能使用这个正则表达式吗?

@"^([^=;]+=[^=;]*)(;[^=;]+=[^=;]*)*;?$"

http://social.msdn.microsoft.com/Forums/en-US/regexp/thread/48bf2a4f-7312-4a32-b874-b77a27f7c5d0

答案 1 :(得分:1)

我感觉到你的痛苦 - 为什么人们这样做?

正则表达式/类似grep的工具是可行的方法。容纳他们格式化的无数方式将不会很有趣。

答案 2 :(得分:0)

我会在其中制作一个带有随机文本的示例文件,以及每种可能格式的一个连接字符串。然后将(一个或多个)正则表达式写入匹配测试文件中的每个连接字符串。然后在你的6GB数据上运行它,并希望最好。

答案 3 :(得分:0)

该连接字符串可以构建为一个字符串:

x = "Provider=xyz;Initial Catalog=bdf;Database=pdq;"

一堆连续的行:

x = "Provider=xyz;" & _
    "Initial Catalog=bdf;" & _
    "Database=pdq;"

一堆行:

x = "Provider=xyz;"
x = x & "Initial Catalog=bdf;"
x = x & "Database=pdq;"

或在dotnet中使用ConnectionBuilder对象

SqlConnectionStringBuilder x = newSqlConnectionStringBuilder();
x.Add("Data Source", "pdq");
x.Add("Initial Catalog", "xyz");

那么识别连接字符串的所有位置并向后工作不是更好吗?

“的SqlConnection | odbcconnect |的OleDbConnection | ConnectionString的”