From 2b4c5320277e732da3f1347d17cb4c83b98d492e Mon Sep 17 00:00:00 2001 From: "Paul S. Owen" Date: Tue, 12 Feb 2002 17:53:20 +0000 Subject: [PATCH] Minor change to email match git-svn-id: file:///svn/phpbb/trunk@2114 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/bbcode.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/phpBB/includes/bbcode.php b/phpBB/includes/bbcode.php index ea0d6b2437..801af47876 100644 --- a/phpBB/includes/bbcode.php +++ b/phpBB/includes/bbcode.php @@ -209,7 +209,7 @@ function bbencode_second_pass($text, $uid) $replacements[4] = $bbcode_tpl['url4']; // [email]user@domain.tld[/email] code.. - $patterns[5] = "#\[email\]([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)\[/email\]#si"; + $patterns[5] = "#\[email\]([a-z0-9\-_.]+?@[\w\-]+\.[\w\-\.]+\.[\w]+)\[/email\]#si"; $replacements[5] = $bbcode_tpl['email']; $text = preg_replace($patterns, $replacements, $text); @@ -611,9 +611,8 @@ function make_clickable($text) $ret = preg_replace("#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[^, \n\r]*)?)#i", "\\1www.\\2.\\3\\4", $ret); // matches an email@domain type address at the start of a line, or after a space. - // Note: before the @ sign, the only valid characters are the alphanums and "-", "_", or ".". - // After the @ sign, we accept anything up to the first space, linebreak, or comma. - $ret = preg_replace("#([\n ])([a-z0-9\-_.]+?)@([^, \n\r]+)#i", "\\1\\2@\\3", $ret); + // Note: Only the followed chars are valid; alphanums, "-", "_" and or ".". + $ret = preg_replace("#([\n ])([a-z0-9\-_.]+?)@([\w\-]+\.[\w\-\.]+\.[\w]+)#i", "\\1\\2@\\3", $ret); // Remove our padding.. $ret = substr($ret, 1);