UNPKG

@explores/reg

Version:

正则库

115 lines (107 loc) 3.35 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.exploreReg = {})); }(this, (function (exports) { 'use strict'; /** * @author zm * 匹配自然数 */ var Natural = /^[+]{0,1}(\d+)$/; /** * @author zm * 匹配自然数 */ var Positive = /^[+]{0,1}(\d+)$|^[+]{0,1}(\d+\.\d+)$/; /** * @author zm * @description 配置中括号里面的内容,比如 [是范德萨范德萨] */ var bracketMiddle = /\[(\w+)\]/g; /** * @author zm * @description 不能包含字母 * */ var excludeLetter = /^[^A-Za-z]*$/; /** * 身份证 */ var idCard = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/; /** ` * @author zm * @description 匹配手机号 * */ var phone = /^1(3|4|5|7|8)\d{9}$/; /** * @author zxf * @description 手机号(根据2021工信部更新) */ var strictPhone = /^1(3\d{2}|4[14-9]\d|5([0-35689]\d|7[1-79])|66\d|7[2-35-8]\d|8\d{2}|9[13589]\d)\d{7}$/; /** * @author zm * @description 匹配邮箱 * @example[xxx@qq.com] */ var email = /^[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*@[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*\.[a-z]{2,}$/; /** * @author zm * @description 匹配url地址 * @example[https://www.xxx.com] */ var url = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/; /** * @author zm *@description 匹配 ip地址 * @example [192.168.0.1] */ var ip4 = /(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)/; /** * @author zm * @description 匹配qq号码 * @example [569833015] */ var qq = /[1-9]([0-9]{4,10})/; /** * @author zm * @description 火车车次 * @example ['G1868', 'D102', 'D9', 'Z5', 'Z24', 'Z17'] */ var trainNumber = /^[GCDZTSPKXLY1-9]\d{1,4}$/; /** * @author zm * @description 匹配手机IMEI * @example '123456789012345', '1234567890123456', '12345678901234567' */ var phoneIMEI = /^\d{15,17}$/; /** * @author zm * @description 统一社会信用代码(宽松匹配)(15位/18位/20位数字/字母) * @example ['91110108772551611J', '911101085923662400'] */ var creditCode = /^(([0-9A-Za-z]{15})|([0-9A-Za-z]{18})|([0-9A-Za-z]{20}))$/; /** * 最多有N位小数的正则 * @param num */ var RetainDecimal = function (num) { return new RegExp("^(d+)(.d{0," + num + ")?$"); }; exports.Natural = Natural; exports.Positive = Positive; exports.RetainDecimal = RetainDecimal; exports.bracketMiddle = bracketMiddle; exports.creditCode = creditCode; exports.email = email; exports.excludeLetter = excludeLetter; exports.idCard = idCard; exports.ip4 = ip4; exports.phone = phone; exports.phoneIMEI = phoneIMEI; exports.qq = qq; exports.strictPhone = strictPhone; exports.trainNumber = trainNumber; exports.url = url; Object.defineProperty(exports, '__esModule', { value: true }); })));