【问题标题】:mysql regex from point A to B从A点到B点的mysql正则表达式
【发布时间】:2013-03-30 19:58:52
【问题描述】:

如何使用 MySQL 从以下代码中删除 iframe 标记:

Hai, lasa-ma in lumea mea
Du-te nu ma astepta, pa-pa, pa-pa, pa-pa
Crede-ma-i mai bine asa
Poate ne intalnim candva, pa-pa, pa-pa, pa-pa</pre>
<pre width="80"></pre>
<iframe src="http://www.youtube.com/embed/GRXJuctr7Hk?feature=player_embedded" frameborder="0" width="640" height="360"></iframe>

我正在使用:

update wp_posts set post_content = REPLACE (post_content, '<iframe src="http://www.youtube.com/embed/','');

但我想删除所有 iframe 标记。 在 php 中使用正则表达式,但在 sql 中我不知道如何做到这一点。

对不起我的英语不好......

【问题讨论】:

    标签: mysql sql regex replace sql-update


    【解决方案1】:

    请注意,这是一种快速而肮脏的解决方案,但如果您的字符串上最多只有一个 iframe 标记,则可以使用以下内容:

    UPDATE
      wp_posts
    SET
      post_content =
      CONCAT(
        SUBSTRING_INDEX(post_content , '<iframe', 1),
        SUBSTRING_INDEX(post_content , '</iframe>', -1)
      )
    

    第一个 SUBSTRING_INDEX 将返回 &lt;iframe 字符串左侧的所有内容,第二个将返回 &lt;/iframe&gt; 字符串右侧的所有内容。

    如果有多个 iframe,这将不起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-23
      • 1970-01-01
      • 1970-01-01
      • 2021-01-10
      • 1970-01-01
      • 2021-07-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多