SQL连接字符串与Regex匹配部分我写了一个正则表达式来匹配SQL连接字符串部分。在第一个规范中,初始目录等被强制不包含特殊字符。所以我有字符串strConn="DataSource=VAIOE;InitialCatalog=SomeTextOnlyCatname;IntegratedSecurity=True;PersistSecurityInfo=True;MultipleActiveResultSets=True;ConnectTimeout=0;";正则表达式databaseNameRegex=newRegex(@"(?i)b(InitialsCatalog|Database)bs?=s?(w+s*)*;?");现在,我需要匹配可能具有符号、标点符号等名称的部分。例如stringstrConn="DataSource=VAIOE;InitialCatalog=N3wC@t@l0gName*6Symbols;IntegratedSecurity=True;PersistSecurityInfo=真;MultipleActiveResultSets=真;连接超时=0;”;我想返回InitialCatalog=N3wC@t@l0gName*6Symbols的地方。我试过RegexdatabaseNameRegex=newRegex(@"(?i)b(InitialsCatalog|Database)bs?=s?(w+p{P}*p{M}*p{Z}*s*)*;?");但是由于连接字符串中的分号而失败。处理这个问题的最佳正则表达式是什么?感谢您的时间。您可以使用SqlConnection为您解析连接字符串并避免使用RegEx吗?如果您只需要数据库名称,则以下内容应该有效:varconn=newSqlConnection(strConn);Console.WriteLine(conn.Database);编辑AllonGuralnek提供了更好的方法-谢谢!使用SqlConnectionStringBuilder-它会提取您需要的任何信息。以上就是C#学习教程的全部内容:匹配SQL连接字符串和Regex部分。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注—varconnBuilder=newSqlConnectionStringBuilder(strConn);Console.WriteLine(connBuilder.InitialCatalog);本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
