2009-06-23 18 views
3

Scheint wie ein ziemlich einfaches Problem. Ich möchte etwa 6 GB Inhalt und klassischen ASP-Code durchsehen und finde alles, was wie eine Verbindungszeichenfolge aussieht. Problem ist, dass die Verbindungszeichenfolgen auf ein Dutzend verschiedene Arten formatiert sind.Verbindungszeichenfolgen im Code programmatisch finden

Ich dachte über eine Regex nach bestimmten Eigenschaften wie "catalog =" oder "password =" etc. suchen. Irgendwelche Gedanken/Ideen?

Antwort

1

Ich fühle deinen Schmerz - warum tun die Leute das?

Regex/Grep-ähnliche Tools sind der Weg zu gehen. Die unzähligen Arten, wie sie formatiert werden, machen keinen Spaß.

0

ich darin eine Beispieldatei mit einigen zufälligen Text dauern würde, sowie eine Verbindungszeichenfolge in jedem Ihrer möglichen Formate. Schreiben Sie dann (eine oder mehrere) Regexes, die mit jeder Verbindungszeichenfolge in Ihrer Testdatei übereinstimmen. Dann lassen Sie es auf Ihren 6 GB Daten laufen und hoffen auf das Beste.

0

ist, dass Verbindungszeichenfolge kann als nur einen String gebaut werden:

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

eine Reihe von weiterführenden Leitungen:

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

ein paar Zeilen:

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

oder in dotnet ein ConnectionBuilder Objekt

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

Wäre es also nicht besser, alle Stellen zu identifizieren, an denen Verbindungszeichenfolgen verwendet werden und rückwärts arbeiten?

„SQLConnection | odbcconnect | OleDbConnection | Connectionstring“

+0

Vielleicht. Problem ist dann, wie identifizieren Sie alle Stellen, an denen die Strings verwendet werden? Das ist für mich ausländischer Code, und das Schervolumen von Dateien macht manuelle Prozesse unmöglich. –

Verwandte Themen