MySQL 正则替换数据:REGEXP_REPLACE函数

用法: (此函数为MYSQL8.0版本新增,低于8.0版本没有此函数)

 REGEXP_REPLACE()函数用于模式匹配。它通过匹配字符来替换给定的字符串字符。

REGEXP_REPLACE(exprpatrepl[, pos[, occurrence[, match_type]]])

Replaces occurrences in the string expr that match the regular expression specified by the pattern pat with the replacement string repl, and returns the resulting string. If exprpat, or repl is NULL, the return value is NULL.

(将字符串表达式中与模式pat指定的正则表达式匹配的匹配项替换为替换字符串repl,并返回结果字符串。如果expr、pat或repl为NULL,则返回值为NULL)

REGEXP_REPLACE() takes these optional arguments:

  • pos: The position in expr at which to start the search. If omitted, the default is 1.

  • occurrence: Which occurrence of a match to replace. If omitted, the default is 0 (which means “replace all occurrences”).

  • match_type: A string that specifies how to perform matching. The meaning is as described for REGEXP_LIKE().

Prior to MySQL 8.0.17, the result returned by this function used the UTF-16 character set; in MySQL 8.0.17 and later, the character set and collation of the expression searched for matches is used. (Bug #94203, Bug #29308212)

 

 

使用示例:

表数据

功能需求:把 name 字段中的a标签内容替换为空

实现SQL:

UPDATE tableName set `name` = REGEXP_REPLACE(`name`, '<.*>', '') WHERE `name` REGEXP '<.*>';

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值