我在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();

09-07 05:03