$re = '/\+([0-9]{1,4})(?:\s?)\(([0-9]{1,6})\)(?:\s?)([ 0-9]{1,15})(?:\s?)(?:\-?)(?:\s?)([ \-0-9]{1,10})?(?:\s?)/';
$str = '+49 (461) 127011
+9 (461) 127 011 -123
+49 (461) 127 011 123
+49 (461) 127011-0
+49 (461) 127011-123
+49 (461) 127-011-123
+49 (461) 127 011 123
+49 (461) 12701 1
+001 (46111) 127011-00
+43 (461123) 12-123
+49 46111 127011-0
+49 46111 1270110';
$subst = "";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
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