From 1cda48bfc24396943a0dd7509cdbb889e1aa435d Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 6 Jun 2016 17:58:16 +0200 Subject: [PATCH] renamed REGEX to REGEX_MATCH --- Documentation/Books/AQL/Functions/String.mdpp | 10 +++---- arangod/Aql/FunctionDefinitions.cpp | 4 +-- arangod/Aql/Functions.cpp | 14 +++++----- arangod/Aql/Functions.h | 2 +- js/server/modules/@arangodb/aql.js | 4 +-- js/server/tests/aql/aql-functions-string.js | 28 +++++++++---------- 6 files changed, 31 insertions(+), 31 deletions(-) diff --git a/Documentation/Books/AQL/Functions/String.mdpp b/Documentation/Books/AQL/Functions/String.mdpp index 044a664699..cb6c316373 100644 --- a/Documentation/Books/AQL/Functions/String.mdpp +++ b/Documentation/Books/AQL/Functions/String.mdpp @@ -267,9 +267,9 @@ RANDOM_TOKEN(8) // "zGl09z42" RANDOM_TOKEN(8) // "m9w50Ft9" ``` -!SUBSECTION REGEX() +!SUBSECTION REGEX_MATCH() -`REGEX(text, search, caseInsensitive) → bool` +`REGEX_MATCH(text, search, caseInsensitive) → bool` Check whether the pattern *search* is contained in the string *text*, using regular expression matching. @@ -327,9 +327,9 @@ If the regular expression in *search* is invalid, a warning will be raised and the function will return *false*. ```js -REGEX("the quick brown fox", "the.*fox") // true -REGEX("the quick brown fox", "^(a|the)\s+(quick|slow).*f.x$") // true -REGEX("the\nquick\nbrown\nfox", "^the(\n[a-w]+)+\nfox$") // true +REGEX_MATCH("the quick brown fox", "the.*fox") // true +REGEX_MATCH("the quick brown fox", "^(a|the)\s+(quick|slow).*f.x$") // true +REGEX_MATCH("the\nquick\nbrown\nfox", "^the(\n[a-w]+)+\nfox$") // true ``` !SUBSECTION REVERSE() diff --git a/arangod/Aql/FunctionDefinitions.cpp b/arangod/Aql/FunctionDefinitions.cpp index 72940723df..d63fb5d2dc 100644 --- a/arangod/Aql/FunctionDefinitions.cpp +++ b/arangod/Aql/FunctionDefinitions.cpp @@ -177,8 +177,8 @@ struct FunctionDefiner { false, true, true, &Functions::Contains}); add({"LIKE", "AQL_LIKE", "s,r|b", true, true, false, true, true, &Functions::Like}); - add({"REGEX", "AQL_REGEX", "s,r|b", true, true, false, true, - true, &Functions::Regex}); + add({"REGEX_MATCH", "AQL_REGEX_MATCH", "s,r|b", true, true, false, true, + true, &Functions::RegexMatch}); add({"LEFT", "AQL_LEFT", "s,n", true, true, false, true, true}); add({"RIGHT", "AQL_RIGHT", "s,n", true, true, false, true, true}); add({"TRIM", "AQL_TRIM", "s|ns", true, true, false, true, true}); diff --git a/arangod/Aql/Functions.cpp b/arangod/Aql/Functions.cpp index fea4910d3f..038d7cae7d 100644 --- a/arangod/Aql/Functions.cpp +++ b/arangod/Aql/Functions.cpp @@ -1419,11 +1419,11 @@ AqlValue Functions::Like(arangodb::aql::Query* query, return AqlValue(result); } -/// @brief function REGEX -AqlValue Functions::Regex(arangodb::aql::Query* query, - arangodb::AqlTransaction* trx, - VPackFunctionParameters const& parameters) { - ValidateParameters(parameters, "REGEX", 2, 3); +/// @brief function REGEX_MATCH +AqlValue Functions::RegexMatch(arangodb::aql::Query* query, + arangodb::AqlTransaction* trx, + VPackFunctionParameters const& parameters) { + ValidateParameters(parameters, "REGEX_MATCH", 2, 3); bool const caseInsensitive = GetBooleanParameter(trx, parameters, 2, false); StringBufferLeaser buffer(trx); arangodb::basics::VPackStringBufferAdapter adapter(buffer->stringBuffer()); @@ -1464,7 +1464,7 @@ AqlValue Functions::Regex(arangodb::aql::Query* query, if (matcher == nullptr) { // compiling regular expression failed - RegisterWarning(query, "REGEX", TRI_ERROR_QUERY_INVALID_REGEX); + RegisterWarning(query, "REGEX_MATCH", TRI_ERROR_QUERY_INVALID_REGEX); return AqlValue(arangodb::basics::VelocyPackHelper::NullValue()); } @@ -1479,7 +1479,7 @@ AqlValue Functions::Regex(arangodb::aql::Query* query, if (error) { // compiling regular expression failed - RegisterWarning(query, "REGEX", TRI_ERROR_QUERY_INVALID_REGEX); + RegisterWarning(query, "REGEX_MATCH", TRI_ERROR_QUERY_INVALID_REGEX); return AqlValue(arangodb::basics::VelocyPackHelper::NullValue()); } diff --git a/arangod/Aql/Functions.h b/arangod/Aql/Functions.h index cec9b63f95..63ae304902 100644 --- a/arangod/Aql/Functions.h +++ b/arangod/Aql/Functions.h @@ -97,7 +97,7 @@ struct Functions { VPackFunctionParameters const&); static AqlValue Like(arangodb::aql::Query*, arangodb::AqlTransaction*, VPackFunctionParameters const&); - static AqlValue Regex(arangodb::aql::Query*, arangodb::AqlTransaction*, + static AqlValue RegexMatch(arangodb::aql::Query*, arangodb::AqlTransaction*, VPackFunctionParameters const&); static AqlValue Passthru(arangodb::aql::Query*, arangodb::AqlTransaction*, VPackFunctionParameters const&); diff --git a/js/server/modules/@arangodb/aql.js b/js/server/modules/@arangodb/aql.js index c374f7f485..0dfe22d2a6 100644 --- a/js/server/modules/@arangodb/aql.js +++ b/js/server/modules/@arangodb/aql.js @@ -2301,7 +2301,7 @@ function AQL_LIKE (value, regex, caseInsensitive) { /// @brief searches a substring in a string, using a regex //////////////////////////////////////////////////////////////////////////////// -function AQL_REGEX (value, regex, caseInsensitive) { +function AQL_REGEX_MATCH (value, regex, caseInsensitive) { 'use strict'; var modifiers = ''; @@ -8358,7 +8358,7 @@ exports.AQL_UPPER = AQL_UPPER; exports.AQL_SUBSTRING = AQL_SUBSTRING; exports.AQL_CONTAINS = AQL_CONTAINS; exports.AQL_LIKE = AQL_LIKE; -exports.AQL_REGEX = AQL_REGEX; +exports.AQL_REGEX_MATCH = AQL_REGEX_MATCH; exports.AQL_LEFT = AQL_LEFT; exports.AQL_RIGHT = AQL_RIGHT; exports.AQL_TRIM = AQL_TRIM; diff --git a/js/server/tests/aql/aql-functions-string.js b/js/server/tests/aql/aql-functions-string.js index 95a9c91c01..f529bb16e0 100644 --- a/js/server/tests/aql/aql-functions-string.js +++ b/js/server/tests/aql/aql-functions-string.js @@ -62,18 +62,18 @@ function ahuacatlStringFunctionsTestSuite () { //////////////////////////////////////////////////////////////////////////////// testRegexInvalid : function () { - assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX()"); - assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX(\"test\")"); - assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX(\"test\", \"meow\", \"foo\", \"bar\")"); + assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX_MATCH()"); + assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX_MATCH(\"test\")"); + assertQueryError(errors.ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH.code, "RETURN REGEX_MATCH(\"test\", \"meow\", \"foo\", \"bar\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"[\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"[^\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"a.(\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"(a\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"(a]\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"**\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"?\")"); - assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX(\"test\", \"*\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"[\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"[^\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"a.(\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"(a\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"(a]\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"**\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"?\")"); + assertQueryWarningAndFalse(errors.ERROR_QUERY_INVALID_REGEX.code, "RETURN REGEX_MATCH(\"test\", \"*\")"); }, testRegex : function () { @@ -217,13 +217,13 @@ function ahuacatlStringFunctionsTestSuite () { ]; values.forEach(function(v) { - var query = "RETURN REGEX(@what, @re)"; + var query = "RETURN REGEX_MATCH(@what, @re)"; assertEqual(v[2], getQueryResults(query, { what: v[0], re: v[1] })[0], v); - query = "RETURN NOOPT(REGEX(@what, @re))"; + query = "RETURN NOOPT(REGEX_MATCH(@what, @re))"; assertEqual(v[2], getQueryResults(query, { what: v[0], re: v[1] })[0], v); - query = "RETURN NOOPT(V8(REGEX(@what, @re)))"; + query = "RETURN NOOPT(V8(REGEX_MATCH(@what, @re)))"; assertEqual(v[2], getQueryResults(query, { what: v[0], re: v[1] })[0], v); });