diff --git a/interface/lib/plugins/mail_user_filter_plugin.inc.php b/interface/lib/plugins/mail_user_filter_plugin.inc.php
index ccf58b853c0bb3b9da0224b527558507f4a62ead..4f24042b303bca819da67de91ec4ab6c72933b03 100644
--- a/interface/lib/plugins/mail_user_filter_plugin.inc.php
+++ b/interface/lib/plugins/mail_user_filter_plugin.inc.php
@@ -137,8 +137,13 @@ class mail_user_filter_plugin {
 			$content = '';
 			$content .= '### BEGIN FILTER_ID:'.$page_form->id."\n";
 
-			//$content .= 'require ["fileinto", "regex", "vacation"];'."\n";
-			
+			if($page_form->dataRecord["source"] == 'Header') {
+				$parts = explode(':',trim($page_form->dataRecord["searchterm"]));
+				$page_form->dataRecord["source"] = trim(array_shift($parts));
+				$page_form->dataRecord["searchterm"] = trim(implode(':',$parts));
+				unset($parts);
+			}
+
 			if($page_form->dataRecord["op"] == 'domain') {
 				$content .= 'if address :domain :is "'.strtolower($page_form->dataRecord["source"]).'" "'.$page_form->dataRecord["searchterm"].'" {'."\n";
 			} elseif ($page_form->dataRecord["op"] == 'localpart') {
@@ -152,33 +157,50 @@ class mail_user_filter_plugin {
 				$content .= 'if size :over '.intval($page_form->dataRecord["searchterm"]).$unit.' {'."\n";
 			} else {
 			
-				if($page_form->dataRecord["source"] == 'Header') {
-					$parts = explode(':',trim($page_form->dataRecord["searchterm"]));
-					$page_form->dataRecord["source"] = trim($parts[0]);
-					unset($parts[0]);
-					$page_form->dataRecord["searchterm"] = trim(implode(':',$parts));
-					unset($parts);
-				}
+				$content .= 'if header :regex    "'.strtolower($page_form->dataRecord["source"]).'" ["';
+
+				# special chars in sieve regex must be escaped with double-backslash
+				if($page_form->dataRecord["op"] == 'regex') {
+					# if providing a regex, special chars must already be quoted as intended;
+					# we will simply try to check for an obviously unquoted double-quote and handle that.
+					$patterns = array( '/([^\\\\]{2})"/', '/([^\\\\])\\\\"/' );
+					$replace  = array( '${1}\\\\\\\\"', '${1}\\\\\\\\"' );
+					$searchterm = preg_replace( $patterns, $replace, $page_form->dataRecord["searchterm"] );
+				} else {
+					$sieve_regex_escape = array(
+						'\\' => '\\\\\\',
+						'+' => '\\\\+',
+						'*' => '\\\\*',
+						'?' => '\\\\?',
+						'[' => '\\\\[',
+						'^' => '\\\\^',
+						']' => '\\\\]',
+						'$' => '\\\\$',
+						'(' => '\\\\(',
+						')' => '\\\\)',
+						'{' => '\\\\{',
+						'}' => '\\\\}',
+						'|' => '\\\\|',
+						'.' => '\\\\.',
+						# these (from preg_quote) should not be needed
+						#'=' => '\\\\=',
+						#'!' => '\\\\!',
+						#'<' => '\\\\<',
+						#'>' => '\\\\>',
+						#':' => '\\\\:',
+						#'-' => '\\\\-',
+						#'#' => '\\\\#',
+						);
+					$searchterm = strtr( $page_form->dataRecord["searchterm"], $sieve_regex_escape );
 
-				$content .= 'if header :regex    ["'.strtolower($page_form->dataRecord["source"]).'"] ["';
-
-				$searchterm = preg_quote($page_form->dataRecord["searchterm"]);
-				$searchterm = str_replace(
-					array(
-						'"',
-						'\\[',
-						'\\]'
-					),
-					array(
-						'\\"',
-						'\\\\[',
-						'\\\\]'
-					), $searchterm);
+				}
 
 				if($page_form->dataRecord["op"] == 'contains') {
 					$content .= ".*".$searchterm;
 				} elseif ($page_form->dataRecord["op"] == 'is') {
 					$content .= "^".$searchterm."$";
+				} elseif ($page_form->dataRecord["op"] == 'regex') {
+					$content .= $searchterm;
 				} elseif ($page_form->dataRecord["op"] == 'begins') {
 					$content .= "^".$searchterm."";
 				} elseif ($page_form->dataRecord["op"] == 'ends') {
diff --git a/interface/web/mail/form/mail_user_filter.tform.php b/interface/web/mail/form/mail_user_filter.tform.php
index b1370ecaa1349548c450bcfdffdf479a53bf41f6..0b10799163044b55e569509d6bab764d606c294a 100644
--- a/interface/web/mail/form/mail_user_filter.tform.php
+++ b/interface/web/mail/form/mail_user_filter.tform.php
@@ -94,8 +94,7 @@ $form["tabs"]['filter'] = array (
 			'datatype' => 'VARCHAR',
 			'formtype' => 'SELECT',
 			'default' => '',
-			//'value'  => array('contains'=>'contains_txt','is' => 'Is','begins'=>'Begins with','ends'=>'Ends with')
-			'value'  => array('contains'=>'contains_txt', 'is' => 'is_txt', 'begins'=>'begins_with_txt', 'ends'=>'ends_with_txt', 'localpart' => 'localpart_txt', 'domain' => 'domain_txt')
+			'value'  => array('contains'=>'contains_txt', 'is'=>'is_txt', 'begins'=>'begins_with_txt', 'ends'=>'ends_with_txt', 'regex'=>'regex_txt', 'localpart'=>'localpart_txt', 'domain'=>'domain_txt')
 		),
 		'searchterm' => array (
 			'datatype' => 'VARCHAR',
diff --git a/interface/web/mail/lib/lang/ar_mail_user_filter.lng b/interface/web/mail/lib/lang/ar_mail_user_filter.lng
index 9a15472e88734a485d954d89d58944a8a72a4516..bed377b2f63593b1f1e0acd926b41ae5761693cf 100644
--- a/interface/web/mail/lib/lang/ar_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/ar_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/bg_mail_user_filter.lng b/interface/web/mail/lib/lang/bg_mail_user_filter.lng
index 6929752c5afb0a0051fb343bc1946eeedc1dc2d5..ed7d137db0bbcb78f6379d956cf36557fc3a0adf 100644
--- a/interface/web/mail/lib/lang/bg_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/bg_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Описание';
 $wb['is_txt'] = 'е';
 $wb['begins_with_txt'] = 'Начало с';
 $wb['ends_with_txt'] = 'Край с';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Изтрий';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/br_mail_user_filter.lng b/interface/web/mail/lib/lang/br_mail_user_filter.lng
index 226b7e2722db81b3a60be7f29cfe783bde426f68..560858c7137e8be482926fbd5d41d6831aa8d3f4 100644
--- a/interface/web/mail/lib/lang/br_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/br_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contêm';
 $wb['is_txt'] = 'é';
 $wb['begins_with_txt'] = 'Iniciando com';
 $wb['ends_with_txt'] = 'Terminando com';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['move_stop_txt'] = 'Mover para';
 $wb['delete_txt'] = 'Remover';
 $wb['header_txt'] = 'Cabeçalho';
diff --git a/interface/web/mail/lib/lang/ca_mail_user_filter.lng b/interface/web/mail/lib/lang/ca_mail_user_filter.lng
index 8744b2ab79209f4a27b1d36681be930a0bde220a..3aaa7f16657faccd2f240cdbfe7e9419c094cf07 100644
--- a/interface/web/mail/lib/lang/ca_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/ca_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contient';
 $wb['is_txt'] = 'Est';
 $wb['begins_with_txt'] = 'Commence par';
 $wb['ends_with_txt'] = 'Fini par';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Supprimer';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/cz_mail_user_filter.lng b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
index 3f5357f73538dd57536be651102932b17ce7ce21..3d56a9b83900207b529690bb27ba9a88d7c39439 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Obsahuje';
 $wb['is_txt'] = 'Je';
 $wb['begins_with_txt'] = 'Začíná na';
 $wb['ends_with_txt'] = 'Končí na';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Smazat';
 $wb['move_stop_txt'] = 'Přesunout';
 $wb['header_txt'] = 'Hlavička';
diff --git a/interface/web/mail/lib/lang/de_mail_user_filter.lng b/interface/web/mail/lib/lang/de_mail_user_filter.lng
index 345b9c4fbb38d3de1c06b7fe074c0f15a9917e2f..579a867e983d631fd2059984a046d2523e7f5fe6 100644
--- a/interface/web/mail/lib/lang/de_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/de_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Enthält';
 $wb['is_txt'] = 'Ist';
 $wb['begins_with_txt'] = 'Beginnt mit';
 $wb['ends_with_txt'] = 'Endet mit';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['move_stop_txt'] = 'Verschieben nach';
 $wb['delete_txt'] = 'Löschen';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/dk_mail_user_filter.lng b/interface/web/mail/lib/lang/dk_mail_user_filter.lng
index ef8be2a0c97f46b8aa3ae9442f41ad8c45db9ea6..8da1a242010f227e89ee15441b73cda9dc2ad432 100644
--- a/interface/web/mail/lib/lang/dk_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/dk_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Indeholder';
 $wb['is_txt'] = 'Er';
 $wb['begins_with_txt'] = 'Begynder med';
 $wb['ends_with_txt'] = 'Slutter med';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['move_stop_txt'] = 'Flyt til';
 $wb['delete_txt'] = 'Slet';
 $wb['header_txt'] = 'Hoved';
diff --git a/interface/web/mail/lib/lang/el_mail_user_filter.lng b/interface/web/mail/lib/lang/el_mail_user_filter.lng
index 72710a9f7e72d3435023a6e73ea554ab7831ec83..c3c232362e1a76bda46635d147da6cbf299a5a95 100644
--- a/interface/web/mail/lib/lang/el_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/el_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Περιλαμβάνει';
 $wb['is_txt'] = 'είναι';
 $wb['begins_with_txt'] = 'Ξεκινά με';
 $wb['ends_with_txt'] = 'Τελειώνει σε';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Διαγραφή';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/en_mail_user_filter.lng b/interface/web/mail/lib/lang/en_mail_user_filter.lng
index 462ee6d93653f8fd07abf97f2f7b82d23b053f39..7db2df5a7260bfb401dc79cbd0935c15671fcf9d 100644
--- a/interface/web/mail/lib/lang/en_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/en_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['move_stop_txt'] = 'Move to';
 $wb['delete_txt'] = 'Delete';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/es_mail_user_filter.lng b/interface/web/mail/lib/lang/es_mail_user_filter.lng
index ed221d5cb30a702fa181b27ecf4969f43299e045..4e50fbceff012b7a8023d3225eccba999b2c78b6 100644
--- a/interface/web/mail/lib/lang/es_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/es_mail_user_filter.lng
@@ -6,6 +6,7 @@ $wb['contains_txt'] = 'Contiene';
 $wb['delete_txt'] = 'Borrar';
 $wb['domain_txt'] = 'Domain';
 $wb['ends_with_txt'] = 'Termina con';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['from_txt'] = 'De';
 $wb['header_txt'] = 'Cabecera';
 $wb['is_txt'] = 'Es';
diff --git a/interface/web/mail/lib/lang/fi_mail_user_filter.lng b/interface/web/mail/lib/lang/fi_mail_user_filter.lng
index 1238dc86fd79bc1a85fbf911121b65fabcc04488..5315bc6f1ead437378ec233dc1cb26830a377d93 100644
--- a/interface/web/mail/lib/lang/fi_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/fi_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/fr_mail_user_filter.lng b/interface/web/mail/lib/lang/fr_mail_user_filter.lng
index b5cacf2e98628f05d922532ef14e023f12d9ee08..324d6f3c781fc0b8e17600a2472a8ce9f9e17503 100644
--- a/interface/web/mail/lib/lang/fr_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contient';
 $wb['is_txt'] = 'Est';
 $wb['begins_with_txt'] = 'Commence par';
 $wb['ends_with_txt'] = 'Fini par';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Supprimer';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/hr_mail_user_filter.lng b/interface/web/mail/lib/lang/hr_mail_user_filter.lng
index 33fd0106a8df7502e0c0b4fdb92c7a0f3b1b319b..55e46fab9144aa88b02c347accb2379624270206 100644
--- a/interface/web/mail/lib/lang/hr_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/hr_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Sadrži';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Počinje sa';
 $wb['ends_with_txt'] = 'Završava sa';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Obriši';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/hu_mail_user_filter.lng b/interface/web/mail/lib/lang/hu_mail_user_filter.lng
index a3db584920c97c0a95b53a8b05bc10fdb11c4489..8b39c062a6854e3422e8abc067dc8d1dccf4cea2 100644
--- a/interface/web/mail/lib/lang/hu_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/hu_mail_user_filter.lng
@@ -14,6 +14,7 @@ $wb['contains_txt'] = 'Tartalmazza';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['target_error_regex'] = 'The target may only contain these characters: a-z, 0-9, -, ., _, and {space}';
 $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.';
 $wb['delete_txt'] = 'Delete';
diff --git a/interface/web/mail/lib/lang/id_mail_user_filter.lng b/interface/web/mail/lib/lang/id_mail_user_filter.lng
index 93f45979f39348b4af6d623eb201895daee9775e..2a8ec29b459deb785e35a650ab9653bbaec3fff6 100644
--- a/interface/web/mail/lib/lang/id_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/id_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/it_mail_user_filter.lng b/interface/web/mail/lib/lang/it_mail_user_filter.lng
index 827f906345186d111bb3af2b77e2d494f7f0fb2c..131b7ff6b5711a8f75aa3f2cfd5edba8c07bf4b8 100644
--- a/interface/web/mail/lib/lang/it_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/it_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contiene';
 $wb['is_txt'] = 'è';
 $wb['begins_with_txt'] = 'Inizia con';
 $wb['ends_with_txt'] = 'Termina con';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Elimina';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/ja_mail_user_filter.lng b/interface/web/mail/lib/lang/ja_mail_user_filter.lng
index 8ee3801cc8d146ab6086a6c66f082dc0d5902a14..7354c4026515cab15d3c12ef29ebc56ff8356796 100644
--- a/interface/web/mail/lib/lang/ja_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/ja_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/nl_mail_user_filter.lng b/interface/web/mail/lib/lang/nl_mail_user_filter.lng
index 050d64aaf98fa3edbb6cc64fa473be7ab5aa16fd..99dd91b58cf08b49f4ce846a5f0c96493fa63d1a 100644
--- a/interface/web/mail/lib/lang/nl_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/nl_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Bevat';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begint met';
 $wb['ends_with_txt'] = 'Eindigt in';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Verwijderen';
 $wb['move_stop_txt'] = 'Verplaatsen naar';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/pl_mail_user_filter.lng b/interface/web/mail/lib/lang/pl_mail_user_filter.lng
index d0bc6d6a288d921b8c79b35dd2467b1fb0e951a5..6c86f3e52aa7f501ed119ce3502ad43dcc4ac6e7 100644
--- a/interface/web/mail/lib/lang/pl_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/pl_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Zawiera';
 $wb['is_txt'] = 'Jest';
 $wb['begins_with_txt'] = 'Zaczyna siÄ™ od';
 $wb['ends_with_txt'] = 'Kończy się na';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Usuń';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/pt_mail_user_filter.lng b/interface/web/mail/lib/lang/pt_mail_user_filter.lng
index 906c27ecd2d6e523b6b8ec5c255383e1d065f33e..41235591a7e091e3cd0408be0c9a69aba730b97d 100644
--- a/interface/web/mail/lib/lang/pt_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/pt_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/ro_mail_user_filter.lng b/interface/web/mail/lib/lang/ro_mail_user_filter.lng
index 22435d9e91524bfa0167dd2a79a4940e828cc404..3ca08e982a5cbe7a57207cbcd18a47700048f279 100644
--- a/interface/web/mail/lib/lang/ro_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/ro_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/ru_mail_user_filter.lng b/interface/web/mail/lib/lang/ru_mail_user_filter.lng
index 78fac01aee482c71c9f1b4b5c19a272fc22e5475..07e767c245ebddf5952adb401d61f35e13b3bfe4 100644
--- a/interface/web/mail/lib/lang/ru_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/ru_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Содержит';
 $wb['is_txt'] = 'Равно';
 $wb['begins_with_txt'] = 'Начинается с';
 $wb['ends_with_txt'] = 'Заканчивается на';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Удалить';
 $wb['move_stop_txt'] = 'Переместить в';
 $wb['header_txt'] = 'Заголовок';
diff --git a/interface/web/mail/lib/lang/se_mail_user_filter.lng b/interface/web/mail/lib/lang/se_mail_user_filter.lng
index 9830059195a097af027fe3310186350ec891395c..f8c2a6154695a6a6c5879bed62ffd337823bc23a 100644
--- a/interface/web/mail/lib/lang/se_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/se_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Innehåller';
 $wb['is_txt'] = 'Är';
 $wb['begins_with_txt'] = 'Börjar med';
 $wb['ends_with_txt'] = 'Slutar med';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Radera';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/sk_mail_user_filter.lng b/interface/web/mail/lib/lang/sk_mail_user_filter.lng
index 7546cd6afa278c1cf57224c389335b9ee147f6dc..966161ed3f7f509bf93c54f69d0f8289a5756b14 100644
--- a/interface/web/mail/lib/lang/sk_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Contains';
 $wb['is_txt'] = 'Is';
 $wb['begins_with_txt'] = 'Begins with';
 $wb['ends_with_txt'] = 'Ends with';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['delete_txt'] = 'Delete';
 $wb['move_stop_txt'] = 'Move to';
 $wb['header_txt'] = 'Header';
diff --git a/interface/web/mail/lib/lang/tr_mail_user_filter.lng b/interface/web/mail/lib/lang/tr_mail_user_filter.lng
index 6d4e0b8868c128e6a834d7bcd397c49dd0629bd9..816174445b4031f181c79fe477118594c8caea82 100644
--- a/interface/web/mail/lib/lang/tr_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/tr_mail_user_filter.lng
@@ -16,6 +16,7 @@ $wb['contains_txt'] = 'Şunu içeren';
 $wb['is_txt'] = 'Şununla aynı';
 $wb['begins_with_txt'] = 'Åžununla baÅŸlayan';
 $wb['ends_with_txt'] = 'Åžununla biten';
+$wb['regex_txt'] = 'Matches Regex';
 $wb['move_stop_txt'] = 'Şuraya taşı';
 $wb['delete_txt'] = 'Sil';
 $wb['header_txt'] = 'Başlık';
diff --git a/security/ids.whitelist b/security/ids.whitelist
index 6a953f45cf4216b4fef56ec565676b4dd2f8990a..d9b0ba70b5bbd06d8e51641597b38e25e8b04a92 100644
--- a/security/ids.whitelist
+++ b/security/ids.whitelist
@@ -55,4 +55,6 @@ user:/login/index.php:POST.password
 user:/mail/mail_domain_edit.php:POST.dkim_private
 user:/mail/mail_domain_edit.php:POST.dkim_public
 user:/mail/mail_domain_edit.php:POST.dns_record
-user:/sites/web_vhost_domain_edit.php:POST.fastcgi_php_version
\ No newline at end of file
+admin:/mail/mail_user_filter_edit.php:POST.searchterm
+user:/mail/mail_user_filter_edit.php:POST.searchterm
+admin:/mail/mail_user_edit.php:POST.custom_mailfilter