zoukankan      html  css  js  c++  java
  • ruby程序处理HTML编辑器内容只保留类似UBB的内容

    #将字符串进行UBB编码
    def ubb_encode(source_str)
    source_str.scan(/<img .*?>/)
    do |v|
    if v.match(/src=["' ].*?["' ]/) != nil
    source_str = source_str.sub(v, '[img ' + v.match(/src=["' ].*?["' ]/)[0] + '/]')
    end
    end

    source_str.scan(/<span[ ]*?.*?>/)
    do |span|
    style = span.
    match(/style=["']?.*?["' ]/).to_s
    source_str = source_str.sub(span, '[span ' + style +']')
    end
    source_str = source_str.gsub(/background-image.*?\)/,
    '')
    source_str = source_str.gsub(
    '</span>', '[/span]')
    source_str = source_str.gsub(/<strong>
    |<b>/, '[b]').gsub(/<\/strong>|<\/b>/, '[/b]')
    source_str = source_str.gsub(/<br[ ]*?.*?[\/]?>/,
    '[br/]')
    source_str = source_str.gsub(/<u>/,
    '[u]').gsub(/<\/u>/, '[/u]')
    source_str = source_str.gsub(/<em>
    |<i>/, '[i]').gsub(/<\/em>|<\/i>/, '[/i]')
    source_str = source_str.gsub(/<p>/,
    '[p]').gsub(/<\/p>/, '[/p]')
    return source_str
    end

    #将字符串进行UBB解码 不保留HTML代码
    def ubb_decode(source_str)
    source_str.gsub(/<script.*?>.*?<\/script>/,
    '').gsub(/<.*?>/, '').gsub('[', '<').gsub(']', '>').gsub('&quot;', '"')
    end
  • 相关阅读:
    hdu4280 Island Transport(最大流Dinic数组模拟邻接连边)
    hihoCoder1378 (最大流最小割)
    单聊语音
    Mybatis批量更新数据
    mysql 之 MRR
    Intellij IDEA 快捷键整理
    SpringBoot 整合 Swagger2 使用教程
    jdk/dubbo spi
    redis问题(待解决)
    JVM调优心得
  • 原文地址:https://www.cnblogs.com/heimirror/p/2038036.html
Copyright © 2011-2022 走看看