在Powershell中,我试图替换连接字符串配置,但需要做两个不同的替换。如何替换文件中的字符串,但不匹配字符串,但不包含它在PowerShell中包含子字符串? (正则表达式)
特别是,我试图替换连接字符串的用户ID部分,但我们有时使用不同的用户ID需要被不同的替换。
示例连接字符串:
Server=Machine;Database=db;uid=user1;pwd=pass;
Server=Machine2;Database=db2;uid=user1_abc;pwd=pass;
1)什么将一个正则表达式替换字符串是只更换UID当用户没有在用户ID _abc?
2)与此相反,如何取代只有_abc的那个?
例如,这二者匹配,这将无法正常工作:
$string -replace "uid=[^;]*" "uid=$myuser"
3)第三个问题是如何与_abc区分PWD的只有用户仅VS无_abc?
我已经尝试了部分单词排除提议的变体,但似乎没有按预期工作。
你想解决什么问题?它看起来像在预先部署.NET配置文件中更改连接字符串。这是在一个web.config? machine.config? .NET有一个用于更改这些值的API,可能更容易。 – 2014-09-04 00:05:50