From 973c0b8ed7f5c2458d84087d0ccbcbbc527ee194 Mon Sep 17 00:00:00 2001 From: alec Date: Mon, 4 Oct 2010 13:53:15 +0000 Subject: - Use simplified domain expression for proper handling of domain names in UTF8 git-svn-id: https://svn.roundcube.net/trunk@4034 208e9e7b-5314-0410-a742-e7e81cd9613c --- roundcubemail/program/include/rcube_string_replacer.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'roundcubemail/program/include') diff --git a/roundcubemail/program/include/rcube_string_replacer.php b/roundcubemail/program/include/rcube_string_replacer.php index 1eed1bf3c..0471dd0dc 100644 --- a/roundcubemail/program/include/rcube_string_replacer.php +++ b/roundcubemail/program/include/rcube_string_replacer.php @@ -35,13 +35,13 @@ class rcube_string_replacer function __construct() { - $url_chars = 'a-z0-9_\-\+\*\$\/&%=@#:;'; - $url_chars_within = '\?\.~,!'; + // Simplified domain expression for UTF8 characters handling + $utf_domain = '[^&@"\'\\/\s\r\t\n]+\\.[a-z]{2,5}'; - $this->link_pattern = "/([\w]+:\/\/|\Wwww\.)([a-z0-9\-\.]+[a-z]{2,4}([$url_chars$url_chars_within]*[$url_chars])?)/i"; + $this->link_pattern = "/([\w]+:\/\/|\Wwww\.)($utf_domain(\S+)?)/i"; $this->mailto_pattern = "/(" ."[-\w!\#\$%&\'*+~\/^`|{}=]+(?:\.[-\w!\#\$%&\'*+~\/^`|{}=]+)*" // local-part - ."@([a-z0-9]([-a-z0-9]*[a-z0-9])?\\.)+[a-z]{2,5}" // domain-part + ."@$utf_domain" // domain-part ."(\?\S+)?" // e.g. ?subject=test... .")/i"; } -- cgit v1.2.3