1

试图整理出以下字符串的正则表达式:

51.4920302, -0.0850667

到目前为止我有:@"^[0-9]*,{-}[0-9]*$"但它似乎没有工作。

任何想法,都非常受欢迎。

整个片段是:

[RegularExpression(@"^[0-9]*,{-}[0-9]*$", ErrorMessage = "Must enter a valid coordinate")]
    public string FaveRunLatLng2 { get; set; }

谢谢。

4

2 回答 2

2

你不允许小数点。您还基本上要求坐标的第二部分为负数,并且不允许第一部分。尝试

@"^-?[0-9]+\.[0-9]+, -?[0-9]+\.[0-9]+$"
于 2011-09-26T20:43:50.517 回答
0
\b-?\d+\.\d+, -?\d+\.\d+\b

如果您希望空格是可选的,您可以添加 \s?,如下所示:

\b-?\d+\.\d+,\s?-?\d+\.\d+\b

只要你知道你的输入会有逗号和空格。如果它是由用户输入的,您可能需要先对其进行清理。

这是您可以使用的在线测试仪: http ://www.regular-expressions.info/javascriptexample.html

于 2011-09-26T20:45:10.607 回答