在MySQL数据库中通过正则表达式(反向)匹配搜索

6
如果我有一个包含正则表达式模式的数据库表格,是否可能返回匹配的字符串行(不需要逐一测试每一行)?
例如,像这样的表格:
RowID     RegExPattern
1         foo\.$
2         bar\.$
3         baz\.$
4         (foo|bar)\.$

并且有一个像这样的输入字符串:

foo.php

将返回RowID14

1个回答

7
如果我有一个包含正则表达式模式的数据库表的一列,是否可能返回与字符串匹配的行?是的,这是可能的。
SELECT RowID
FROM yourtable
WHERE 'foo.php' REGEXP RegExPattern

请注意,如果您省略了$符号,则普通表达式将无法匹配。

在线演示: sqlfiddle

(未经系统地逐行测试)

啊...不对。 您需要测试每一行。


但这都是在服务器上完成的吗?我的意思是,您不必逐行下载并使用输入测试表达式。 - topherg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接