MySQL与PHP的preg_replace是否等效?

我有一个MySQL中的字段匹配的字段,我以为我可以使用正则表达式,但是看来MysqL不具备执行此工作所需的功能.这是场景:

我在PHP中有一个名为$url的变量.假设此变量设置为字符串“ / article / my-article / page / 2”.我也有一个MysqL表中的URL,我想从中提取内容.但是,存储在我的表中的URL包含通配符.

以前,我已经进行了此设置,以便存储在表中的值看起来像这样:“ / article /%/ page /%”.

使用该配置,我可以运行:

SELECT * FROM urls WHERE '$url' LIKE url

并且这将匹配,这是所需的功能.

我现在想做的是允许使用更高级的通配符,这样我的MysqL数据可以不是“ / article /%/ page /%”,而是“ / article / {{slug}} / page / {{ page_no}}”.

我想使用相同的$url输入创建一个将与此数据匹配的SQL查询. LIKE不再是正确的比较,因为我没有使用内置的“%”通配符,而是使用{{.*}}.任何想法如何做到这一点?

解决方法:

一个用户定义函数库,可在MysqL中为您提供preg_replace:
http://www.mysqludf.org/lib_mysqludf_preg/

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...