【问题标题】:How do I replace multiple occurences of a pattern in MySQL?如何替换 MySQL 中多次出现的模式?
【发布时间】:2012-01-01 17:19:25
【问题描述】:

假设我创建了一个类似的字符串,

%ab/c[1a]defgh[41]ijklmnop[0].qrstu[99],vwzyz

我希望它显示为,

%ab/c[]defgh[]ijklmnop[].qrstu[],vwzyz

字符串可以有任何特殊字符。我想要的是用空字符替换大括号内的内容(这种模式可以有任意数量的出现)。括号内的内容可以是字母数字。

您的建议将不胜感激。

谢谢。

【问题讨论】:

    标签: mysql search replace design-patterns


    【解决方案1】:

    MySQL 没有用于模式匹配和替换的内置函数。

    MySQL 有一个REPLACE() 函数,它在一个字符串中进行多次替换,但它只搜索固定字符串,而不是模式。将其用于您描述的任务会非常尴尬。

    您最好将整个字符串取回您的应用程序,然后在其上使用更灵活的字符串操作函数。例如,PHP 中的preg_replace()

    【讨论】:

    • 谢谢比尔。会调查的。我一直在寻找 MySql 中的东西。但现在看来我可能不得不做跨域工作了。
    猜你喜欢
    • 1970-01-01
    • 2019-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    相关资源
    最近更新 更多