经纬度正则如何表示

eHuaTian 2017-05-04 03:48:08
经纬度数据为120度38分54.326785秒。度的范围是0至180,为整数。分的范围为0至60,为整数。秒的范围是0-60,为双精度或单精度。如何用正则表示?
...全文
667 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
crystal_lz 2017-05-06
  • 打赏
  • 举报
回复
引用 3 楼 diaodiaop 的回复:
不过 你为什么要让用户在文本框内输入"经纬度"? 这个需求才是奇怪的吧.
这种需求还是有的 比如某些IP的查询接口 返回的位置就是经纬度给你 然后再用经纬度在地图上定位 只是我和一楼一样 压根就不明白楼主在说啥 也不列举出实际的例子来 来说明自己的需求 全文字在那里描述 路过好几次都懒得搭理 我都搞不懂 它的经纬度是汉字形式还是数字形式 反正【120度38分54.326785秒】这种写法我是头一次见
游离失所 2017-05-05
  • 打赏
  • 举报
回复

            Regex reg = new Regex(@"^(?:120|0|1[01]\d|[1-9]\d?)度(0|60|[1-5]\d?)分(60|60\.[0]+|0|0\.\d+|[1-9]|[1-9]\.\d+|[1-5]\d|[1-5]\d\.\d+)秒$");
            string input = "120度38分54.326785秒";
            bool isMatch = reg.IsMatch(input);

by_封爱 版主 2017-05-05
  • 打赏
  • 举报
回复
我不会正则. 不过 你为什么要让用户在文本框内输入"经纬度"? 这个需求才是奇怪的吧. 用户怎么会知道某个位置的经纬度..除非专业人员.. 所以我觉得你的需求有了问题..正常在个功能..是弹出一个地图 默认是用户当前位置 然后选择一点 确定. 这个时候 会得到地图api给的经纬度 然后你保存.. 是吧..
夏天的枫 2017-05-05
  • 打赏
  • 举报
回复
听你的意思难道已经“正则”已经是一种类型了么 这个经纬度处理很简单啊,除以60取整,然后余数再除以60取整不久完了?
夏天的枫 2017-05-05
  • 打赏
  • 举报
回复
没听懂。。。
eHuaTian 2017-05-05
  • 打赏
  • 举报
回复
谢谢大家的回复。这个主要是用在数据处理方面。比如用户提供一个经纬度,值为 120度38分54.326785秒。我首先要检查一下这个经纬度值是不是合法的。要求是:度的范围是0至180,为整数。分的范围为0至60,为整数。秒的范围是0-60,为双精度或单精度。以防止用户提供了错误数据。 希望使用正则来做个验证.

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧