Зачем использовать регулярные выражения?Это только сделает его сложным
Используйте массив диапазона и in_array.
$range = range(50,1000,50);
$input = 34;
var_dump(in_array($input, $range)); // false
$input = 150;
var_dump(in_array($input, $range));//true
https://3v4l.org/3ToT9
Регулярное выражениеверсия такова:
Либо цифра дерева, оканчивающаяся на 50
, либо 00
, либо точно 1000
$input = 950;
var_dump(preg_match("/\b\d{1}[5|0]0\b|\b1000\b/", $input));