给写发个函数。
/// <summary>
/// 获取连接字符串某项的值
/// </summary>
/// <param name="connStr">连接字符串</param>
/// <param name="itemName">项目</param>
/// <returns>项目值</returns>
public static string GetItemValueFromConnStr(string connStr, string itemName)
{
if (!connStr.EndsWith(";"))
connStr = ";";
// \s* 匹配0个或多个空白字符
// .*? 匹配0个或多个除 "\n" 之外的任何字符(?指尽可能少重复)
string regexStr = itemName @"\s*=\s*(?<key>.*?);";
Regex r = new Regex(regexStr, RegexOptions.IgnoreCase);
Match mc = r.Match(connStr);
return mc.Groups["key"].Value;
}
调用方法:GetItemValueFromConnStr(connStr, "Source")
StrHelper.GetItemValueFromConnStr(connStr, "Password")..
先通过;分割字符,再用=分割得到的字符串数组.
先split一下,然后找等号后面的东西。