diff --git a/modules/filter.module b/modules/filter.module
index cc76a6e5c5dddc3b4a8ac94414df6ffdefa37ed6..4b8c9467d29fd363c7f8bdb8483065e2a7033ef7 100644
--- a/modules/filter.module
+++ b/modules/filter.module
@@ -994,7 +994,7 @@ function _filter_autop($text) {
$chunk = preg_replace('|(?)\s*\n|', "
\n", $chunk); // make line breaks
$chunk = preg_replace('!(?(?:table|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|p|h[1-6])[^>]*>)\s*
!', "$1", $chunk);
$chunk = preg_replace('!
(\s*?(?:p|li|div|th|pre|td|ul|ol)>)!', '$1', $chunk);
- $chunk = preg_replace('/&([^#])(?![a-z]{1,8};)/', '&$1', $chunk);
+ $chunk = preg_replace('/&([^#])(?![A-Za-z0-9]{0,7};)/', '&$1', $chunk);
}
$output .= $chunk;
}