我有一个字符串"(zoneId==176)&&((startTime==100)&&(endTime==1200))"
,我希望在C#中获取startTime和endTime的值。如何做到这一点我是c#编程的新手,为什么我需要一些线索
答案 0 :(得分:0)
这看起来不像String
而是一块代码。假设这是输入到代码中的值,您可以执行以下操作:
var input = "(zoneId==176)&&((startTime==100)&&(endTime==1200))";
var time = input.Split(')');
var start = time.FirstOrDefault(s => s.Contains("startTime")).Split('=')[2];
var end = time.FirstOrDefault(e => e.Contains("endTime")).Split('=')[2];
您的输出如下:100
和1200
上述实施方案有效,但出于各种原因不应用于生产目的。你需要关注:
这些对于学习如何解析数据和/或任何其他形式的字符串操作都是必不可少的。希望这能指出你正确的方向。
另一种方法是:
var input = "(zoneId==176)&&((startTime==100)&&(endTime==1200))";
var section = input.Split('=');
foreach(var region in section)
{
var zone = region.Substring(0, region.Length);
var number = zone.Where(d => char.IsDigit(d)).ToArray();
}