查找xxx前面/后面的字符串
exp1(?=exp2):查找 exp2 前面的 exp1
(?<=exp2)exp1:查找 exp2 后面的 exp1
exp1(?!exp2):查找后面不是 exp2 的 exp1
(?<!exp2)exp1:查找前面不是 exp2 的 exp1
mysql查询json指定字段值
set @json:='{"name":"abul","age":123,"addr":"xcvxc"}';
# 截取"addr": 后面到,或者}结尾。可能存在字符串含有逗号或者花括号就截取错误
select regexp_substr(@json,'(?<="addr":).+?(?=,|\\})');

Comments