字符内容如下:
据地震台网测定,2011年04月23日20时31分,在陕西省汉中市宁强县(N33.0度,E106.2度)发生2.1级地震,震源深度9千米。我想用正则表达式提取其中的经度--33.0、纬度--106.2,震级--2.1,震源深度--9 ,地点--陕西省汉中市宁强县
据地震台网测定,2011年04月23日20时31分,在陕西省汉中市宁强县(N33.0度,E106.2度)发生2.1级地震,震源深度9千米。我想用正则表达式提取其中的经度--33.0、纬度--106.2,震级--2.1,震源深度--9 ,地点--陕西省汉中市宁强县
String lon = @"(东经)(?<lon>((\+|-)?(0|[1-9]\d*)(\.\d*[0-9])*))";
String lat = @"(北纬)(?<lat>((\+|-)?(0|[1-9]\d*)(\.\d*[0-9])*))";
richTextBox2.Text = "经度:"+(Regex.Match(str, lon).Result("${lon}")) + "纬度:"+(Regex.Match(str, lat).Result("${lat}"));问题解决了。
但其中的正则表达式哪位帮我合并在一个字符串。 我合并后总是出现问题。先谢了。
string str = "据地震台网测定,2011年04月23日20时31分,在陕西省汉中市宁强县(北纬33.0度,东经106.2度)发生2.1级地震,震源深度9千米。";
string lonlat = @"(北纬)(?<lat>((\+|-)?(0|[1-9]\d*)(\.\d*))).*?(?<lon>(\+|-)?(0|[1-9]\d*)(\.\d*))";
//string lat = @"(?<lat>((\+|-)?(0|[1-9]\d*)(\.\d*[0-9])*))";
Match m = new Regex(lonlat).Match(str);
if(m.Success)
richTextBox2.Text = "经度:" + m.Groups["lon"].Value + "纬度:" + m.Groups["lat"].Value;