diff --git a/interface/lib/plugins/mail_user_filter_plugin.inc.php b/interface/lib/plugins/mail_user_filter_plugin.inc.php index df939d376daf5e5deff7a96fff277842203a057f..774da83994dbe8723b80b473e6f9b266d8c9ca26 100644 --- a/interface/lib/plugins/mail_user_filter_plugin.inc.php +++ b/interface/lib/plugins/mail_user_filter_plugin.inc.php @@ -141,13 +141,22 @@ class mail_user_filter_plugin { $content .= 'if header :regex ["'.strtolower($page_form->dataRecord["source"]).'"] ["'; $searchterm = preg_quote($page_form->dataRecord["searchterm"]); - $searchterm = str_replace('\\[', '\\\\[', $searchterm); - $searchterm = str_replace('\\]', '\\\\]', $searchterm); + $searchterm = str_replace( + array( + '"', + '\\[', + '\\]' + ), + array( + '\\"', + '\\\\[', + '\\\\]' + ), $searchterm); if($page_form->dataRecord["op"] == 'contains') { $content .= ".*".$searchterm; } elseif ($page_form->dataRecord["op"] == 'is') { - $content .= $searchterm."$"; + $content .= "^".$searchterm."$"; } elseif ($page_form->dataRecord["op"] == 'begins') { $content .= " ".$searchterm.""; } elseif ($page_form->dataRecord["op"] == 'ends') {