如何测试有效的UUID / GUID?

如何检查变量是否包含有效的UUID / GUID标识符?

我目前只对验证类型1和4感兴趣,但对答案没有限制。


目前,UUID与RFC4122中的规定相同。

因此要验证UUID ...

/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i

...确保您具有版本1至5的标准格式的UUID,并且是根据RFC4122的相应Variant。

注:大括号“{”和“}”不是规范的。 它们是一些系统和用法的产物。

易于修改上述正则表达式以满足原始问题的要求。

提示:正则表达式组/捕获


正则表达式来拯救

/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test('01234567-9ABC-DEF0-1234-56789ABCDEF0');

或括号

/^{?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}‌​}?$/

如果您使用Node.js进行开发,则建议使用名为Validator的包。 它包含验证UUID不同版本所需的所有正则表达式,以及用于验证的各种其他函数。

这是npm链接:Validator

var a = 'd3aa88e2-c754-41e0-8ba6-4198a34aa0a2'
v.isUUID(a)
true
v.isUUID('abc')
false
v.isNull(a)
false
链接地址: http://www.djcxy.com/p/16269.html

上一篇: How to test valid UUID/GUID?

下一篇: Whats the difference between a GUID and a UUID?