具有可选分隔符的最佳UUID RegEx

时间:2013-01-30 00:07:24

标签: regex uuid

我已经找到了UUID正则表达式here的问题,但是这些表达式没有考虑缺少的分隔符。

我已经提出了following expression,但是有更优化的RegEx吗?

/\b([0-9a-f]{8}-?([0-9a-f]{4}-?){3}[0-9a-f]{12})\b/i

1 个答案:

答案 0 :(得分:0)

我假设你是指一个较短的表达。我将你的正则表达式简化为以下内容:

/[\da-f]{8}-?([\da-f]{4}-?){3}[\da-f]{12}/i,您可以在行动here中看到。

我删除了外括号和\b,因为没有它们,所有内容都正确匹配。 通过将[0-9a-f]替换为[\da-f],我还能够删除三个字符。

我最初有[0-F],但在检查了ASCII序列后,我意识到匹配了 0123456789:;<=>?@ABCDEF,其中包含一些我们不想匹配的额外符号。

总之,我的表达与你的同义词相同,但包含的字符少了九个。