我正在使用C#自动化过程。我的脚本如下所示
UPDATE Table
SET param_val = REPLACE(param_val,'Proxy430/','Proxy440/')
WHERE param_key = 'PROXY_URL';
UPDATE Table
SET param_val = REPLACE (param_val, '.420/', '.430/')
WHERE param_val LIKE '%.420/%';
每个月,我们将升级版本,例如44
代替43
和43
代替42
并运行此脚本。为了实现自动化,我编写了C#代码并使用了以下代码
string text = File.ReadAllText(filePath);
text.Replace(oldvale, newvalue);
File.WriteAllText(filepath, text);
但是,问题是它只能替换一个单词。如何替换文件中的两个文本。在我的情况,Proxy430
应及时更换为Proxy440
和Proxy440
成Proxy450
在单发射击。
如何实现呢?
如果以正确的顺序致电替换,您可以在一行上完成两次替换。
string TestString = @"UPDATE Table
SET param_val = REPLACE(param_val, 'Proxy430/', 'Proxy440/')
WHERE param_key = 'PROXY_URL';
UPDATE Table
SET param_val = REPLACE(param_val, '.420/', '.430/')
WHERE param_val LIKE '%.420/%'; ";
const string oldFrom = "Proxy430";
const string oldTo = "Proxy440";
const string newFrom = "Proxy440";
const string newTo = "Proxy450";
string result = TestString.Replace(newFrom, newTo).Replace(oldFrom, oldTo);
Console.WriteLine(result);
输出为:
UPDATE Table
SET param_val = REPLACE(param_val, 'Proxy440/', 'Proxy450/')
WHERE param_key = 'PROXY_URL';
UPDATE Table
SET param_val = REPLACE(param_val, '.420/', '.430/')
WHERE param_val LIKE '%.420/%';
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句