Небольшое количество обнаруживающих регулярных выражений - PullRequest
1 голос
/ 26 декабря 2010

Мне нужно, чтобы обнаружить что-то вроде

STEAM_number здесь от 0 до 5: число здесь только 0 или 1: любое число здесь

PHP preg_match

Спасибо за вашу помощь!

STEAM_X: Y: Z

X должно быть 0, 1, 2, 3, 4 или 5

Y должно быть либо 0, либо 1

Z может быть любым числом, просто не может содержать текст.

Действительный: STEAM_0: 1: 1958281

Недействительный: STEAM_9: 4: 1912tg

Ответы [ 4 ]

3 голосов
/ 26 декабря 2010
preg_match('/^STEAM_[0-5]:[01]:[0-9]+$/', $input)
2 голосов
/ 26 декабря 2010
preg_match('/^STEAM_[0-5]:[0-1]:[0-9]+$/', $x)
1 голос
/ 26 декабря 2010

Как насчет STEAM_ [0-5]: [0-1]: [0-9] +

0 голосов
/ 26 декабря 2010
preg_match("#STEAM_[0-5]{1}:[0-1]{1}:([0-9]+)#", $string, $matches);

Как-то так, еще не проверял.

Протестировано:

$string = "STEAM_0:1:1928519 STEAM_1:5:19a28519 STEAM_18:1:1928519x";

preg_match("#STEAM_[0-5]{1}:[0-1]{1}:([0-9]+)#", $string, $matches);

echo($matches[0]); //STEAM_0:1:1928519
...