| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- export function isExternal (path) {
- return /^(https?:|mailto:|tel:)/.test(path)
- }
- export function validPhone (phone) {
- return /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(phone)
- }
- export function validEmail (email) {
- return /^([a-zA-Z0-9]+[_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/.test(email)
- }
- export function validMAC (mac) {
- return /^[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}$/.test(mac)
- }
- export function validIPv4 (ip) {
- return /^((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))).){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))$/.test(ip)
- }
- export function validIPv4Address (address) {
- return /^[a-z]+:\/\/((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))).){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))(:[1-9]\d{1,4})?$/.test(address)
- }
- export function validIPv6 (ip) {
- if (ip === '::') {
- return true
- }
- const arr = ip.split('::')
- switch (arr.length) {
- case 1:
- return /^([\da-zA-Z]{1,4}:){7}[\da-zA-Z]{1,4}$/.test(ip)
- case 2:
- return /^([\da-zA-Z]{1,4}:){0,6}[\da-zA-Z]{1,4}$/.test(
- arr[0] && arr[1] ? `${arr[0]}:arr[1]` : arr[0] || arr[1]
- )
- default:
- return false
- }
- }
- export function validLongitude (longitude) {
- return /^[-+]?(0(\.\d{1,8})?|([1-9](\d)?)(\.\d{1,8})?|1[0-7]\d{1}(\.\d{1,8})?|180(([.][0]{1,8})?))$/.test(longitude)
- }
- export function validLatitude (latitude) {
- return /^[-+]?((0|([1-8]\d?))(\.\d{1,10})?|90(\.0{1,10})?)$/.test(latitude)
- }
|