我有一个非常有趣的任务,我不知道如何实现.
我需要在数据库表中存储许多正则表达式,并且需要能够找到它们与给定字符串匹配的内容.
例如:
id | regexp
---|-------------
1 | ^hello world$
2 | ^I have [0-9] flowers&
3 | ^some other regexp$
4 | ^and another (one|regexp)$
我需要找到哪些表达式匹配字符串“我有5朵花”.当然我可以SELECT * FROM table并循环遍历在PHP中逐个匹配它们的表达式,但这对于服务器处理起来会很糟糕.
我可以以某种方式索引此表或使用特殊的SQL查询来处理此任务吗?
我会感激任何答案.谢谢.
最佳答案
select * from table where $your_string RLIKE regexp