我已经学会了一些基本的正则表达式来润湿我的脚,但这对我来说仍然有点太复杂了。我需要以十进制度数取一组用户输入的坐标(例子):
$latitude = -42.323432 $longitude = 176.232123
并使用PHP中的preg_match()
函数检查它们是否有效。看起来很简单,但我不能为我的生活编写正则表达式,以确保没有错误的数据通过。我将检查彼此的北向和东向分离,以便使用preg_match()
循环将foreach
迭代两次。
我想我已经找到了所有必要的条件:
在此之后,我被困住了!在编写正则表达式时,将不胜感激。谢谢......
答案 0 :(得分:8)
让我们试一试:
/^[+\-]?[0-9]{1,3}\.[0-9]{3,}\z/
细分:
^ - start of string
[+\-]? - zero or one from set of `+` and `-`
[0-9]{1,3} - 1 to 3 digits
\. - decimal point
[0-9]{3,} - 3 or more digits
\z - end of string
(注意,这是未经测试的;))