$re = '/SELECT((?:.(?!SELECT))*)FROM INSERTED/sim';
$str = 'SELECT 1 FROM INSERTED i
SELECT \'Hello, world!\' FROM INSERTED i
SET @foo = (SELECT @@userid)
SELECT * FROM INSERTED i
SELECT
One,
Two,
Three, Four,
Five,
Six, Seven, Eight,
Nine, Ten
FROM INSERTED i
SET @bar = (SELECT TOP(1) PatronID FROM INSERTED i)';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php