| | |
| | | { |
| | | // Simplified domain expression for UTF8 characters handling |
| | | // Support unicode/punycode in top-level domain part |
| | | $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.([^\\x00-\\x40\\x5b-\\x60\\x7b-\\x7f]{2,}|xn--[a-z0-9]{2,})'; |
| | | $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.([^\\x00-\\x2f\\x3b-\\x40\\x5b-\\x60\\x7b-\\x7f]{2,}|xn--[a-z0-9]{2,})'; |
| | | $url1 = '.:;,'; |
| | | $url2 = 'a-z0-9%=#@+?&\\/_~\\[\\]-'; |
| | | $url2 = 'a-z0-9%=#@+?!&\\/_~\\[\\]{}-'; |
| | | |
| | | $this->link_pattern = "/([\w]+:\/\/|\Wwww\.)($utf_domain([$url1]?[$url2]+)*)/i"; |
| | | $this->mailto_pattern = "/(" |