json与html标签互相转换

1、Java中json字符串包含html标签

 /**
       * json含有HTML标签的文本
       * @param str
       * @return
     */
    public static String switchStr(String str){
        str = str.replace("<","&lt;");
        str = str.replace(">","&gt;");
        str = str.replace(" ","&nbsp;");
        str = str.replace("&","&amp;");
        str = str.replace("\n","<br>");
        return str;
    }

例如:json字符串中包含html标签

String json= "<a href='http://www.baidu.com'>百度一下</a>";
System.out.println(Test.switchStr(url));

输出结果:&amp;lt;a&amp;nbsp;href='http://www.baidu.com'&amp;gt;百度一下&amp;lt;/a&amp;gt;

 

2、js中的字符串中的html标签相互转换

 (1)把html标签转为json
      function htmlencode(str) {
             str = str.replace(/&/g, '&amp;');
             str = str.replace(/</g, '&lt;');
             str = str.replace(/>/g, '&gt;');
             str = str.replace(/  /g, '&nbsp; ');
             str = str.replace(/t/g, '&nbsp;&nbsp;');
             str = str.replace(/x22/g, '&quot;');
             str = str.replace(/(?:t| |v|r)*n/g, '<br />');
             str = str.replace(/x27/g, '&#39;');
             return str;
        }

   例如:把js中的标签解析为字符串
        var url = "<a href='http://www.baidu.com'>百度一下</a>";
        alert(htmlencode(url));
        结果:&l&<br />bsp;&<br />bsp;;a href='h&<br />bsp;&<br />bsp;&<br />bsp;&<br />bsp;p://www.baidu.com'&g&<br />bsp;&<br />bsp;;百度一下&l&<br />bsp;&<br />bsp;;/a&g&<br />bsp;&<br />bsp;;
       
        (2)把json转为html标签
        function htmldecode(str) {
             str = str.replace(/&amp;/gi, '&');
             str = str.replace(/&nbsp;/gi, ' ');
             str = str.replace(/&quot;/gi, '"');
             str = str.replace(/&#39;/g, "'");
             str = str.replace(/&lt;/gi, '<');
             str = str.replace(/&gt;/gi, '>');
             str = str.replace(/<br[^>]*>(?:(rn)|r|n)?/gi, 'n');
             return str;
        }

   例如:js中的json中字符串转换为html标签
        var json = "&amp;lt;a&amp;nbsp;href='http://www.baidu.com'&amp;gt;百度一下&amp;lt;/a&amp;gt;";
        alert(htmldecode(json));
        结果:<a href='http://www.baidu.com'>百度一下</a>

转载于:https://www.cnblogs.com/zyb2014/p/4025259.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值