1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

MDEV-6027 RLIKE: "." no longer matching new line

Added a new system variable:
default_regex_flags='DOTALL,DUPNAMES,EXTENDED,EXTRA,MULTILINE,UNGREEDY'
This commit is contained in:
Alexander Barkov
2014-04-23 10:57:25 +04:00
parent bcf16fa612
commit f9e5f237f0
10 changed files with 287 additions and 1 deletions

View File

@ -349,3 +349,51 @@ DROP TABLE t1;
SELECT REGEXP_SUBSTR('See https://mariadb.org/en/foundation/ for details', 'https?://[^/]*');
--echo #
--echo # MDEV-6027 RLIKE: "." no longer matching new line
--echo #
SELECT 'cat and\ndog' RLIKE 'cat.*dog';
SELECT 'cat and\r\ndog' RLIKE 'cat.*dog';
SELECT 'a\nb' RLIKE 'a.b';
SELECT 'a\nb' RLIKE '(?-s)a.b';
SET default_regex_flags='DOTALL';
SELECT @@default_regex_flags;
SELECT 'cat and\ndog' RLIKE 'cat.*dog';
SELECT 'cat and\r\ndog' RLIKE 'cat.*dog';
SELECT 'a\nb' RLIKE 'a.b';
SELECT 'a\nb' RLIKE '(?-s)a.b';
SET default_regex_flags=DEFAULT;
--error ER_REGEXP_ERROR
SELECT REGEXP_SUBSTR('Monday Mon','^((?<DN>Mon|Fri|Sun)day|(?<DN>Tue)sday).*(?P=DN)$');
SET default_regex_flags='DUPNAMES';
SELECT REGEXP_SUBSTR('Monday Mon','^((?<DN>Mon|Fri|Sun)day|(?<DN>Tue)sday).*(?P=DN)$');
SELECT REGEXP_SUBSTR('Tuesday Tue','^((?<DN>Mon|Fri|Sun)day|(?<DN>Tue)sday).*(?P=DN)$');
SET default_regex_flags=DEFAULT;
SELECT 'AB' RLIKE 'A B';
SELECT 'AB' RLIKE 'A# this is a comment\nB';
SET default_regex_flags='EXTENDED';
SELECT 'AB' RLIKE 'A B';
SELECT 'AB' RLIKE 'A# this is a comment\nB';
SET default_regex_flags=DEFAULT;
SELECT 'Aq' RLIKE 'A\\q';
SET default_regex_flags='EXTRA';
--error ER_REGEXP_ERROR
SELECT 'Aq' RLIKE 'A\\q';
SET default_regex_flags=DEFAULT;
SELECT 'a\nb\nc' RLIKE '^b$';
SET default_regex_flags='MULTILINE';
SELECT 'a\nb\nc' RLIKE '^b$';
SET default_regex_flags=DEFAULT;
SELECT REGEXP_SUBSTR('abc','.+');
SELECT REGEXP_REPLACE('abc','^(.*)(.*)$','\\1/\\2');
SET default_regex_flags='UNGREEDY';
SELECT REGEXP_SUBSTR('abc','.+');
SELECT REGEXP_REPLACE('abc','^(.*)(.*)$','\\1/\\2');
SET default_regex_flags=DEFAULT;