相关代码
import { NIL } from "uuid";/** 验证UUID* 为空 则返回 false* @param uuid* @returns {boolean}*/
export function MyUUIDValidate(uuid: any): boolean {if (typeof uuid === "string" && uuid !== NIL) { //uuid !== NIL 判断是否是默认值0000const reg = new RegExp(/[0123456789abcdef]{8}-[0123456789abcdef]{4}-4[0123456789abcdef]{3}-[0123456789abcdef]{4}-[0123456789abcdef]{12}/);return reg.test(uuid);} else {return false;}
}console.log(MyUUIDValidate("00000000-0000-0000-0000-000000000000")) //false
console.log(MyUUIDValidate("d6fd0e0b-a232-46ef-89c6-08dcc89c48b1")) //true
const reg = new RegExp(/[0123456789abcdef]{8}-[0123456789abcdef]{4}-4[0123456789abcdef]{3}-[0123456789abcdef]{4}-[0123456789abcdef]{12}/
正则解析:
该 TypeScript 代码创建了一个正则表达式 reg,用于匹配 UUID(通用唯一识别码)格式的字符串。具体规则如下:
匹配 8 个十六进制数字。
跟一个连字符 -。
接着匹配 4 个十六进制数字。
再跟一个连字符 -。
然后是4
加上 3 个十六进制数字。
继续跟一个连字符 -。
接下来匹配 4 个十六进制数字。
最后再跟一个连字符 -。
最终匹配 12 个十六进制数字。