gpt4 book ai didi

MySQL REGEXP NOT 组运算符

转载 作者:行者123 更新时间:2023-11-29 11:47:37 26 4
gpt4 key购买 nike

在这个虚拟示例中,我尝试匹配除 catdog 之外的所有动物:(cat|dog)。因此,我需要一个 NOT 运算符来否定我的 (cat|dog) 组。 MySQL提供这样的东西吗?

SELECT 'I am a cat' REGEXP '^I am a [NOT](cat|dog)$'; -> 0
SELECT 'I am a dog' REGEXP '^I am a [NOT](cat|dog)$'; -> 0
SELECT 'I am a horse' REGEXP '^I am a [NOT](cat|dog)$'; -> 1
SELECT 'I am not a dog' REGEXP '^I am a [NOT](cat|dog)$'; -> 1
SELECT 'I am a catwoman' REGEXP '^I am a [NOT](cat|dog)$'; -> 1

我已阅读 MySQL REGEXP documentation多次没有成功。

最佳答案

试试这个:

REGEXP 'I am (a [^(cat|dog)])|(not a (cat|dog))';

开头的插入符号将检查该词是否不是猫或狗。如果失败,它将检查声明是否显示“不是猫”或“不是狗”。该解决方案假设这是除了实际名称之外表达该动物不是猫或狗的唯一其他方式。

SQLFiddle

关于MySQL REGEXP NOT 组运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34648826/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com