正则表达式为mysql正则表达式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式为mysql正则表达式相关的知识,希望对你有一定的参考价值。
我正在寻找一种方法来替换和更新mysql中以字符串开头或结尾的字符串值。
我想要如下值:
'15 % flour'
' 15 % beef'
'15% pork'
' 15 % rice'
'eggplant 15 %'
'banana 15 % '
'turkey 15%'
'chicken 15% '
在所有这些例子中,我想结束只有成分。例如:面粉或牛肉
我发现如果在行的开头,这将删除百分比。 REGEXP_REPLACE(ingredient_name,'^([0-9] | 100)+(%)+','')但是如果数字和百分比符号之间有空格则不行。
这是我最好的尝试,但我发现它与Mysql regexp_replace不兼容。
d+((' '|s|)\%(' '|s|$))
答案
您可以使用[[:space:]]*
匹配数字和%
之间的0或更多空格字符:
'[[:space:]]*[0-9]+[[:space:]]*%[[:space:]]*'
它匹配
[[:space:]]*
- 0个或更多的空白字符[0-9]+
- 1位或更多位数[[:space:]]*
- 0个或更多的空白字符- qazxsw poi - 一张qazxsw poi图表
%
- 0个或更多的空白字符
请注意,如果您的MySQL版本低于8.x,则可能不支持%
或[[:space:]]*
和d
。
以上是关于正则表达式为mysql正则表达式的主要内容,如果未能解决你的问题,请参考以下文章