PHP preg_match UUID v4 - PullRequest
       4

PHP preg_match UUID v4

5 голосов
/ 03 июня 2011

У меня есть строка, содержащая UUID v4

$uuid = 'http://domain.com/images/123/b85066fc-248f-4ea9-b13d-0858dbf4efc1_small.jpg';

Как мне получить значение b85066fc-248f-4ea9-b13d-0858dbf4efc1 из приведенного выше, используя preg_match()?
Подробнеена UUID v4 можно найти здесь

Ответы [ 2 ]

12 голосов
/ 03 июня 2011
$uuid = 'http://domain.com/images/123/b85066fc-248f-4ea9-b13d-0858dbf4efc1_small.jpg';
preg_match('!/images/\d+/([a-z0-9\-]*)_!i', $uuid, $m);

И

preg_match('/[a-f0-9]{8}\-[a-f0-9]{4}\-4[a-f0-9]{3}\-(8|9|a|b)[a-f0-9]{3‌​}\-[a-f0-9]{12}/', $uuid, $m);

тоже работает. Взято из здесь , но я не знаю, можем ли мы на это положиться.

6 голосов
/ 03 июня 2011

Вы можете попробовать этот простой шаблон для uuids

preg_match('/\w{8}-\w{4}-\w{4}-\w{4}-\w{12}/',$uuid,$matches);
...