这是我在StackOverflow上的第一篇文章,如果缺少正确的信息请谅解。
情景。
我正在从Google天气API转移到BOM(澳大利亚)天气服务。我已经成功地使用流读取器等获取了来自BOM的天气数据,但我卡在了与每日预报相匹配的图像图标上。
我在旧的Google天气API中所做的事情非常残酷但有效。Google天气API只提供了几种不同类型的预测,我可以将它们组合成一个字符串,然后再在imageURL中使用。
以下是我在Google天气API中所做的示例...
imageDay1.ImageUrl = "images/weather/" + lbWeatherDay1Cond.Text.Replace(" ", string.Empty) + ".png";
"大部分晴朗"=mostlysunny.png
"晴朗"=sunny.png
"有雨可能"=chanceofrain.png
"阵雨"=showers.png
"局部多云"=partlycloudy.png
每日预报有15种不同的可能选项。
现在我遇到了问题,与BOM(澳大利亚天气服务)相关的问题是...
可能有早晨阵雨
阵雨或两个,后来变晴
还有成千上万的可能性...没有标准。
我希望能够从这个字符串中的关键字创建一个字符串。例如将“阵雨”转化为“Showers.png”,或者更复杂一些,将“有阵雨可能”识别为“Chanceshowers.jpg”,同时保留“阵雨或两个”作为“Showers.png”。
我很容易接受任何想法或解决方案(希望是C#)。只要它非常轻量级(该过程必须重复进行5天预报),并且可以捕获几乎任何情况...
目前,我正在使用String.Replace、String.Replace、String.Replace选项继续进行。现在可以,但我不能像这样推出生产。
谢谢大家!
Trent
Dictionary<string, string>
,其中键字符串是一个 正则表达式,值字符串是相应图像的名称。你将测试输入与此字典中的所有正则表达式匹配,并对于第一个匹配的表达式,你将获得相应的图像值。正则表达式:http://msdn.microsoft.com/en-us/library/ms228595(v=vs.80).aspx - RotemList<Tuple<string, string>>
。 - Joe White