我需要验证输入的纬度和经度字符串的格式,而不是验证纬度或经度的值是否正确。
格式为纬度 89:90:00N 或 67:90:76 S,经度为 67:23:00E 或 78:23:45W
我正在使用下面的表达式,但我得到了错误
if (!Regex.IsMatch(currentValue, "^[0-9][0-9]:[0-9][0-9]:[0-9][0-9][N][S]$"))
Errors.Text = "Invalid format of Latitude;
请纠正我哪里错了。我需要验证它是 N 还是 S(不区分大小写)。
最佳答案
您已将 N
和 S
设为强制。
"^(?:90|[0-8][0-9]):[0-5][0-9]:[0-5][0-9][NS]$" // latitude
"^(?:180|1[0-7][0-9]|[0-9][0-9]):[0-5][0-9]:[0-5][0-9][EW]$" // longitude
应该可以工作。这还将拒绝无效条目,例如 190:67:75E
或 99:99:99S
。
关于javascript - 正则表达式验证纬度和经度的输入格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7393583/