1
SQL接続文字列のセクションに一致する正規表現を書いています。最初の仕様では、初期カタログなどに特殊文字を含まないようにしました。だから私はSQL接続文字列とRegexとの一致部分
string strConn = "Data Source=VAIOE;Initial Catalog=SomeTextOnlyCatname;Integrated
Security=True;Persist Security Info=True;MultipleActiveResultSets=True;Connect Timeout=0;";
Regex databaseNameRegex =
new Regex(@"(?i)\b(Initial\sCatalog|Database)\b\s?=\s?(\w+\s*)*;?");
を持っていた今、私はInitial [email protected]@l0gName*6Symbols
を返すようにしたい
string strConn = "Data Source=VAIOE;Initial [email protected]@l0gName*6Symbols;Integrated
Security=True;Persist Security Info=True;MultipleActiveResultSets=True;Connect Timeout=0;";
例えば、シンボルと名前を持つことができますセクションを一致させるために句読点などを必要としています。
接続文字列にセミコロンの存在に起因する、私は
Regex databaseNameRegex =
new Regex(@"(?i)\b(Initial\sCatalog|Database)\b\s?=\s?(\w+\p{P}*\p{M}*\p{Z}*\s*)*;?");
を試してみましたが、これは失敗します。これに対処する最良の正規表現は何ですか?
お時間をいただきありがとうございます。
私は実際に 'SqlConnectionStringBuilder'クラスを使用します。これは、接続文字列内のすべてのキーと値のペアへのアクセスを提供します。また、キーと値のペアから接続文字列を作成することもできます。したがって、初期カタログを取得するには、 'new SqlConnectionStringBuilder(myConnectionString).InitialCatalog'を使用できます。 –
これは素晴らしいアイデアです。私は 'SqlConnectionStringBuilderClass'を使うと思います。 – MoonKnight
それで、それは便利です! –