Dans MariaDB, le NOT REGEXP l'opérateur est une négation de REGEXP opérateur.
Si la chaîne correspond à l'expression régulière fournie, le résultat est 0 , sinon c'est 1 . C'est le résultat opposé à ce que le REGEXP renverrait (lorsqu'il n'est pas préfixé par NOT ).
Syntaxe
La syntaxe ressemble à ceci :
expr NOT REGEXP pat
Où expr est la chaîne d'entrée et pat est l'expression régulière pour laquelle vous testez la chaîne.
C'est l'équivalent de faire ce qui suit :
NOT (expr REGEXP pat) Exemple
Voici un exemple d'utilisation dans un SELECT déclaration :
SELECT 'Bread' NOT REGEXP '^Br'; Résultat :
+--------------------------+ | 'Bread' NOT REGEXP '^Br' | +--------------------------+ | 0 | +--------------------------+
Ici, le modèle est mis en correspondance si la chaîne d'entrée commence par Br . C'est le cas, mais parce que nous utilisons NOT REGEXP , on obtient un résultat négatif (0 ).
La déclaration ci-dessus est l'équivalent de ceci :
SELECT NOT ('Bread' REGEXP '^Br'); Résultat :
+----------------------------+
| NOT ('Bread' REGEXP '^Br') |
+----------------------------+
| 0 |
+----------------------------+ Par rapport à REGEXP
Dans cet exemple, nous comparons les résultats de REGEXP et NOT REGEXP :
SELECT
'Bread' REGEXP '^Br' AS "REGEXP",
'Bread' NOT REGEXP '^Br' AS "NOT REGEXP"; Résultat :
+--------+------------+ | REGEXP | NOT REGEXP | +--------+------------+ | 1 | 0 | +--------+------------+
Un résultat positif
Les exemples précédents ont donné 0 pour NOT REGEXP , car la chaîne a fait correspondent réellement au modèle. Voici un exemple où nous obtenons un 1 , ce qui indique que la chaîne ne le fait pas correspondance :
SELECT
'Sofa' REGEXP '^Br' AS "REGEXP",
'Sofa' NOT REGEXP '^Br' AS "NOT REGEXP"; Résultat :
+--------+------------+ | REGEXP | NOT REGEXP | +--------+------------+ | 0 | 1 | +--------+------------+