private static final String LATITUDE_PATTERN = "^[-+]?((90(\\.\\d{1,6})?)|([1-8]?\\d(\\.\\d{1,6})?))$";
^
: 匹配输入的开始位置。[-+]?
: 匹配可选的正号或负号。(
: 开始一个分组。
90(\\.\\d{1,6})?
: 匹配 -90 到 90 之间的值,小数部分最多为6位。|
: 或者。[1-8]?\\d(\\.\\d{1,6})?
: 匹配 -89.999999 到 89.999999 之间的值,小数部分最多为6位。$
: 匹配输入的结束位置。
private static final String LONGITUDE_PATTERN = "^[-+]?((180(\\.\\d{1,6})?)|((1[0-7]\\d)|([1-9]\\d?))(\\.\\d{1,6})?)$";
^
: 匹配输入的开始位置。[-+]?
: 匹配可选的正号或负号。(
: 开始一个分组。
180(\\.\\d{1,6})?
: 匹配 -180 到 180 之间的值,小数部分最多为6位。|
: 或者。((1[0-7]\\d)|([1-9]\\d?))(\\.\\d{1,6})?
: 匹配 -179.999999 到 179.999999 之间的值,小数部分最多为6位。$
: 匹配输入的结束位置。
这两个正则表达式分别适用于验证纬度和经度的格式,并且限制了小数部分的位数为最多6位