如果我有一个数据库表,其中有一列包含正则表达式模式,是否可以返回字符串匹配的行(不需要依次系统地测试每一行)?
例如,如下所示的表:
RowID RegExPattern
1 foo\.$
2 bar\.$
3 baz\.$
4 (foo|bar)\.$和如下所示的输入字符串:
foo.php将返回RowID的1和4。
发布于 2012-08-21 04:30:56
如果我有一个数据库表,其中有一列包含正则表达式模式,是否可以返回行...字符串是否匹配?
是的,这是可能的。
SELECT RowID
FROM yourtable
WHERE 'foo.php' REGEXP RegExPattern但请注意,您的正则表达式将不匹配。如果您省略了$,那么它们会这样做。
在线查看它的工作方式:sqlfiddle
(不需要系统地依次测试每一行)
呃..。不是的。您需要测试每一行。
https://stackoverflow.com/questions/12044628
复制相似问题