我在Google地图上画一条线,而不是创建一个像这样的字符串:
(-25.368819800291383,130.55809472656256)(-25.507716386730266,131.05797265625006)(-24.89637614190406,131.49193261718756)(-24.582068950590272,130.31090234375006)
第一个值是纬度,第二个值是经度。我为此字符串分配了一个隐藏字段值,以便可以在服务器上访问它。
如何获取经纬度数字?
我在尝试
Match match = Regex.Match(points, @"(^(0|(-(((0|[1-9]\d*)\.\d+)|([1-9]\d*))))$,^(0|(-(((0|[1-9]\d*)\.\d+)|([1-9]\d*))))$)*", RegexOptions.IgnoreCase);
最佳答案
试试这个
\((?<lat>[-\d.]+),(?<long>[-\d.]+)\)
我喜欢在这里使用命名组。仅获得纬度使用
Regex regexObj = new Regex(@"\((?<lat>[-\d.]+),(?<long>[-\d.]+)\)");
Match matchResult = regexObj.Match(subjectString);
while (matchResult.Success) {
Console.WriteLine(matchResult.Groups["lat"].Value));
matchResult = matchResult.NextMatch();