From 8f96e383a7a72de5619520672092cd6a110442d4 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan <hypolite@mrpetovan.com> Date: Mon, 11 Mar 2019 14:37:56 -0400 Subject: [PATCH] Remove new lines from domain name part of autolinker regular expression in Util\Strings - Fixes issue where the autolinker would include the next paragraph is a pathless URL was followed by new lines. --- src/Util/Strings.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Util/Strings.php b/src/Util/Strings.php index 3edc9ba906..681edb1c87 100644 --- a/src/Util/Strings.php +++ b/src/Util/Strings.php @@ -358,17 +358,17 @@ class Strings return '@(?xi) (?<![=\'\]"/]) # Not preceded by [, =, \', ], ", / \b -( # Capture 1: entire matched URL - https?:// # http or https protocol +( # Capture 1: entire matched URL + https?:// # http or https protocol (?: - [^/.][^/]+[.][^/]+/? # looks like domain name followed by a slash + [^/\s.][^/\s]+[.][^\s/]+/? # looks like domain name followed by a slash ) - (?: # One or more: - [^\s()<>]+ # Run of non-space, non-()<> - | # or - \(([^\s()<>]+|(\([^\s()<>]+\)))*\) # balanced parens, up to 2 levels - | # or - [^\s`!()\[\]{};:\'".,<>?«»ââââ] # not a space or one of these punct chars + (?: # One or more: + [^\s()<>]+ # Run of non-space, non-()<> + | # or + \(([^\s()<>]+|(\([^\s()<>]+\)))*\) # balanced parens, up to 2 levels + | # or + [^\s`!()\[\]{};:\'".,<>?«»ââââ] # not a space or one of these punct chars )* )@'; } -- 2.39.5