【问题标题】:Trim different characters from beginning and end of string in MySQL在MySQL中从字符串的开头和结尾修剪不同的字符
【发布时间】:2020-09-17 13:17:03
【问题描述】:

在运行 MySQL 的数据库中,我有一列包含以段落标记开头和结尾的文本的数据,我试图在 select 语句期间删除它们

<p>Some Text</p>

我了解 TRIM 语句可以从字符串的开头、结尾或两者中删除特定字符

TRIM('x' FROM xSometextx) as trimmed

这将从字符串的开头和结尾删除 x,但如果开头和结尾字符不同,我无法找到 TRIM。例如,是否可以在 select 语句中删除前导 &lt;p&gt; 和尾随 &lt;/p&gt;

【问题讨论】:

    标签: mysql sql string trim


    【解决方案1】:

    您可以使用带有说明符LEADING 和TRAILING 的嵌套TRIM 来删除&lt;p&gt; 标记:

    SELECT TRIM(TRAILING '</p>' FROM TRIM(LEADING '<p>' FROM '<p>Test</p>'))
    

    从 MySQL 8.0 开始,您还可以使用REGEXP_REPLACE 删除&lt;p&gt; 标签,如上面的TRIM:

    SELECT REGEXP_REPLACE('<p>Test</p>', '^\<p\>|\<\/p\>$', '')
    

    demo on dbfiddle.uk

    【讨论】:

      猜你喜欢
      • 2011-03-01
      • 2021-05-12
      • 2013-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      相关资源
      最近更新 更多