我想要在一个字符串中替换子字符串134和1254。
((startTime==134)&&(endTime==1254))
假设有一些动态值 - 比如,分别为154和1234。 我已经编写了使用String.Split
方法的代码,但似乎代码很长。 如何使其更短更健壮?
这是代码:
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.Format
(例如((startTime=={0})&&(endTime=={1}))
)或适当解析异常可能是更好的方法来解决你的实际问题(如果更完整的要求会使问题发生太大变化,则考虑提出一个新问题)。 - Alexei Levenkov