如何在MySQL中替换多次出现的模式?

时间:2011-11-19 00:49:02

标签: mysql search replace design-patterns

说我像一个字符串,

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

我希望它显示为,

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

字符串可以包含任何特殊字符。我想要的是用空字符替换大括号内的内容(可能存在任何数量的此模式)。括号内的内容可以是字母数字。

您的建议将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:3)

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

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

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