C# 如何在c中替换字符串中的子字符串#

C# 如何在c中替换字符串中的子字符串#,c#,C#,我想替换字符串中的子字符串134和1254 ((startTime==134)&&(endTime==1254)) 使用一些动态值-例如,分别为154和1234。 我已经使用String.Split方法编写了place的代码,但是代码似乎很长。如何使其更短、更坚固 代码如下: string s = "((startTime==134)&&(endTime==1254))"; string[] time = s.Split(')').Reverse().ToArr

我想替换字符串中的子字符串134和1254

((startTime==134)&&(endTime==1254))
使用一些动态值-例如,分别为154和1234。 我已经使用
String.Split
方法编写了place的代码,但是代码似乎很长。如何使其更短、更坚固

代码如下:

string s = "((startTime==134)&&(endTime==1254))";
string[] time = s.Split(')').Reverse().ToArray();
var start = time.FirstOrDefault(s => s.Contains("startTime")).Split('=')[2];
var end = time.FirstOrDefault(e => e.Contains("endTime")).Split('=')[2];
start ="154";
end = "1234"
time[3] = "((startTime=="+start;
time[2] = "&&(endTime=="+end;
string joinedstring;
joinedstring= String.Join(")", time.Reverse());

使用如下所示的方法替换字符串中的字符

string output = input.Replace("old_value", "new_value");

法希姆的回答基本上是问题的完美答案。您可能希望澄清实际任务是什么,例如
String.Format
(比如
((startTime={0})和&(endTime={1}))
)或者正确解析异常可能是解决实际问题的更好方法(如果更完整的需求对新问题的更改太多,请考虑新问题是否更合适)。