猿问

用于匹配纬度/经度坐标的正则表达式?

我正在尝试创建一个正则表达式来匹配纬度/经度坐标。为了匹配双精度数,我使用(\-?\d+(\.\d+)?),并尝试将其组合为单个表达式:


^(\-?\d+(\.\d+)?),\w*(\-?\d+(\.\d+)?)$

我希望它能匹配一个双精度字母,一个逗号,可能还有一些空格和另一个双精度像素,但这似乎不起作用。具体来说,它仅在没有空间(没有一个或多个)的情况下起作用。我做错了什么?


皈依舞
浏览 765回答 3
3回答

一只名叫tom的猫

空格是\ s,而不是\ w^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$看看是否可行

萧十郎

这将严格匹配落在正确范围内的纬度和经度值:^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$火柴+90.0,-127.55433445、180-90,-180-90.000,-180.0000+90,+18047.1231231,179.99999999不匹配-90。,-180。+90.1,-100.111-91,123.456045、180
随时随地看视频慕课网APP
我要回答