$re = '/(?:[\'\*\?\x5c`][^\n\/]+\/|\/[^\/]+?[\'\*\?\x5c`]|\$[!#-\$\(\*\-0-9\?-\[_a-\{])/m';
$str = 'false_positive=do+you+want+a+pizza?+with+mozzarella/pomodoro?
host=www.google.com;cd+/etc;/bin$u/ca*+passwd
host=www.google.com;cat$@/etc$@/passwd
host=www.google.com;cd+/et*;/bi*$u/ca*+passwd
host=www.google.it;/bin/c*t$u+/etc$u/passwd
host=www.google.it;/bin/cat$u+/*tc$u/passwd
host=www.google.it;cd+/etc;/bin/c*t+passwd
host=www.google.com;/bin/ca?+/et?/passwd
host=www.google.com;cat+/etc/${a}passwd
host=www.google.com;cat+/etc/$(echo)passwd
host=www.google.com;cat+/etc/`echo`passwd
host=www.google.com;cat+/etc${a}/passwd
host=www.google.com;cat+/etc$(echo)/passwd
host=www.google.com;cat+/etc`echo`/passwd
host=www.google.com;cat+/etc/passwd${a}
host=www.google.com;cat+/etc/passwd$(echo)
host=www.google.com;cat+/etc/passwd`echo`
host=www.google.com;ca?+/et?/pa??wd
host=www.google.com;cd+etc/+ca?+passwd
host=www.google.com;?at+/?tc/passwd
host=www.google.com;c\\a\\t+/e\\t\\c/pa\\s\\swd
host=www.google.com;cd+/etc;c\\at+p\\a\\sswd
host=www.google.com;cd+/etc;c\'at\'+p\'a\'sswd
host=www.google.com;c$@at /et$@c/pas$@swd
host=www.google.com;c$!at /et$!c/pas$!swd
host=www.google.com;c$*at /et$*c/pas$*swd
host=www.google.com;c$?at /et$?c/pas$?swd
host=www.google.com;c$-at /et$-c/pas$-swd
host=www.google.com;c$_at /et$_c/pas$_swd
host=www.google.com;c$$at /et$$c/pas$$swd';
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