常用正则表达式
项目中有很多地方会用到正则表达式,通过不同的使用,将常用的记录积累下来,以便参考
1.url验证
/* 合法uri*/
export function validateURL(textval) {
const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/
return urlregex.test(textval)
}
2.邮箱验证
/* 小写字母*/ export function validateLowerCase(str) { const reg = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/
return reg.test(str)
}
3.字母验证
/* 小写字母*/
export function validateLowerCase(str) {
const reg = /^[a-z]+$/
return reg.test(str)
}
/* 大写字母*/
export function validateUpperCase(str) {
const reg = /^[A-Z]+$/
return reg.test(str)
}
/* 大小写字母*/
export function validatAlphabets(str) {
const reg = /^[A-Za-z]+$/
return reg.test(str)
}
4.数值验证
/* 数值-验证数字*/
export function validateFloat(str) {
const reg = /^[0-9]*$/
// 或: const reg = /^\d+$/
return reg.test(str)
}
/* 数值-只能输入n个数字*/
export function validateFloat(str) {
const reg = /^\d{n}$/
return reg.test(str)
}
/* 数值-至少输入n个以上的数字*/
export function validateFloat(str) {
const reg = /^\d{n,}$/
return reg.test(str)
}
/* 数值-只能输入m到n个数字*/
export function validateFloat(str) {
const reg = /^\d{m,n}$/
return reg.test(str)
}
/* 数值-实数*/
export function validateReal(str) {
const reg = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/
return reg.test(str)
}
/* 数值-含零、正负实数*/
export function validateFloat(str) {
const reg = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/
return reg.test(str)
}
/* 数值-整数,含0*/
export function validateFloat(str) {
const reg = /^(0|[1-9][0-9]*|-[1-9][0-9]*)$/
return reg.test(str)
}
/* 数值-整数,不含0*/
export function validateFloat(str) {
const reg = /^((-)?[1-9]\d*)$/
// 或: const reg = /^([1-9][0-9]*|-[1-9][0-9]*)$/
return reg.test(str)
}
/* 数值-正整数,含0*/
export function validateFloat(str) {
const reg = /^(0|[1-9][0-9]*)$/
// 或: const reg = /^([1-9]\d*|[0]{1,1})$/
return reg.test(str)
}
/* 数值-正整数,不含0*/
export function validateFloat(str) {
const reg = /^([1-9][0-9]*)$/
// 或: const reg = /^[1-9]+\d*$/
// 或: const reg = /^\+?[1-9][0-9]*$/
return reg.test(str)
}
/* 数值-负整数,含0*/
export function validateFloat(str) {
const reg = /^(0|-[1-9][0-9]*)$/
return reg.test(str)
}
/* 数值-负整数,不含0*/
export function validateFloat(str) {
const reg = /^(-[1-9][0-9]*)$/
return reg.test(str)
}
/* 数值-正实数,含0*/
export function validateFloat(str) {
const reg = /^(?:[1-9]\d*|0)(?:\.\d+)?$/
return reg.test(str)
}
/* 数值-正实数,不含0*/
export function validateFloat(str) {
const reg = /^(?:[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+|[1-9]+\d*)$/
return reg.test(str)
}
/* 数值-负实数,含0*/
export function validateFloat(str) {
const reg = /^(0|-([1-9]+\d*|[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+))$/
return reg.test(str)
}
/* 数值-负实数,不含0*/
export function validateFloat(str) {
const reg = /^-([1-9]+\d*|[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+)$/
return reg.test(str)
}
/* 数值-浮点数,含0*/
export function validateFloat(str) {
const reg = /^(0|[+-]?((0|([1-9]\d*))\.\d+)?)$/
return reg.test(str)
}
/* 数值-浮点数,不含0*/
export function validateFloat(str) {
const reg = /^[+-]?((0|([1-9]\d*))\.\d+)?$/
return reg.test(str)
}
/* 数值-正浮点数,含0*/
export function validateFloat(str) {
const reg = /^(?:[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+|0)$/
return reg.test(str)
}
/* 数值-正浮点数,不含0*/
export function validateFloat(str) {
const reg = /^(?:[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+)$/
return reg.test(str)
}
/* 数值-正浮点数,保留n位小数,含0*/
export function validateFloat(str) {
const reg = /^(0|(0|[1-9][0-9]*)+(\.\d{n}))$/
return reg.test(str)
}
/* 数值-正浮点数,保留m~n个位小数,含0*/
export function validateFloat(str) {
const reg = /^(0|[1-9][0-9]*)+(\.\d{m,n})?$/
return reg.test(str)
}
/* 数值-负浮点数,含0*/
export function validateFloat(str) {
const reg = /^(0|-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))$/
return reg.test(str)
}
/* 数值-负浮点数,不含0*/
export function validateFloat(str) {
const reg = /^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$/
return reg.test(str)
}
/* 数值-负浮点数,保留n位小数,含0*/
export function validateFloat(str) {
const reg = /^(0|-(0|[1-9][0-9]*)+(\.\d{n}))$/
return reg.test(str)
}
/* 数值-最多两位小数的浮点数*/
export function validateFloat(str) {
const reg = /^[0-9]+(\.(?=[0-9])\d{0,2})?$/
return reg.test(str)
}