我想执行一个mysql正则表达式,它将检查字符串的单数和复数版本。
我忽略特殊字符和复杂的语法规则,只想添加或删除“s”。
例如,如果用户输入“shoes”,则应返回“shoes”和“shoe”的匹配项。相反,如果用户输入“shoe”,则应返回“shoe”和“shoes”的匹配项。
我可以选择检查以下匹配的复数形式:

WHERE Store.tags RLIKE ('(^|,)+[[:space:]]*shoe(s)*[[:space:]]*(,|$)+')

我一直在读关于向前看或向后看的积极/消极的东西,我似乎一直在追我的尾巴。

最佳答案

好吧,如果你只是问删除或添加一个S…按照你的要求简单一点…
看看最后一个字母是不是S。如果是->单数去掉,如果不是,复数加一

WHERE (a LIKE '%shoes%' OR  a LIKE '%shoe%')

真是太蠢了,但看到你只需要检查一下…够了。

10-06 04:00