diff --git a/wp-includes/formatting.php b/wp-includes/formatting.php index 5af533932f..77ecbcda72 100644 --- a/wp-includes/formatting.php +++ b/wp-includes/formatting.php @@ -198,7 +198,7 @@ function wptexturize($text, $reset = false) { . '(?(?=!--)' // Is this a comment? . '.+?--\s*>' // Find end of comment . '|' - . '.+?>' // Find end of element + . '[^>]+>' // Find end of element . ')' . '|' . '\[' // Find start of shortcode. @@ -206,7 +206,7 @@ function wptexturize($text, $reset = false) { . '(?:' . '[^\[\]<>]' // Shortcodes do not contain other shortcodes. . '|' - . '<.+?>' // HTML elements permitted. Prevents matching ] before >. + . '<[^>]+>' // HTML elements permitted. Prevents matching ] before >. . ')+' . '\]' // Find end of shortcode. . '\]?' // Shortcodes may end with ]] @@ -224,12 +224,12 @@ function wptexturize($text, $reset = false) { _wptexturize_pushpop_element( $curl, $no_texturize_tags_stack, $no_texturize_tags ); } - } elseif ( '[' === $first && 1 === preg_match( '/^\[(?:[^\[\]<>]|<.+?>)+\]$/', $curl ) ) { + } elseif ( '[' === $first && 1 === preg_match( '/^\[(?:[^\[\]<>]|<[^>]+>)+\]$/', $curl ) ) { // This is a shortcode delimeter. _wptexturize_pushpop_element( $curl, $no_texturize_shortcodes_stack, $no_texturize_shortcodes ); - } elseif ( '[' === $first && 1 === preg_match( '/^\[\[?(?:[^\[\]<>]|<.+?>)+\]\]?$/', $curl ) ) { + } elseif ( '[' === $first && 1 === preg_match( '/^\[\[?(?:[^\[\]<>]|<[^>]+>)+\]\]?$/', $curl ) ) { // This is an escaped shortcode delimeter. // Do not texturize.