Синтаксис действителен, но не будет делать то, что вы хотите.
Для чередования шаблонов используйте
preg_match('/INSERT INTO (?:members|members_profiles)/', $sql) ||
// ^^^ ^
В PCRE […]
определяет класс символов. Это будет соответствовать 1 символу, если он указан в скобках. В вашем случае [members|members_profiles]
будет соответствовать 1 символу, если это один из b
, e
, f
, i
, l
, m
, o
, p
, r
, s
, |
или _
.
Группировка выполняется с использованием круглых скобок другого типа, (?:…)
.
(Кстати, не используйте Regex для обнаружения попыток изменения базы данных. Вместо этого ограничьте разрешения пользователя базы данных.)