前言
最近做地图时遇到输入经纬度,这时候需要前端对输入的经纬度进行校验,所以写了个正则表达式
隐式创建
var reg = /正则表达式/
显示创建
var reg = new RegExp(‘正则表达式’)
一下为经纬度的正则表达式的校验:
longitude: [
{ required: true, message: '请输入经度', trigger: 'blur' },
{
validator: (rule, value, callback) => {
if (value.length === 0) {
callback(new Error('经度范围:-180.000000~180.000000'))
} else {
var reg = /^[-+]?(180(\.0{0,6})?|([0-9]|[1-9][0-9]|1[0-7][0-9]|0{1,3})(\.\d{0,6})?)$/
if (!reg.test(value)) {
callback(new Error('经度范围:-180.000000~180.000000'))
} else {
callback()
}
}
}
}
],
latitude: [
{ required: true, message: '请输入纬度', trigger: 'blur' },
{
validator: (rule, value, callback) => {
if (value.length === 0) {
callback(new Error('纬度范围:-90.000000~90.000000'))
} else {
var reg = /^-?((0|[1-8]?[0-9]?)(([.][0-9]{1,6})?)|90(([.][0]{1,6})?))$/
if (!reg.test(value)) {
callback(new Error('纬度范围:-90.000000~90.000000'))
} else {
callback()
}
}
}
}
]