(搬运)微信富文本转义

微信富文本转义主要是使用正则表达式进行替换标签

贴代码 =>

//富文本转义方法
    convertHtmlToText: function convertHtmlToText(inputText) {
      var returnText = '' + inputText
      returnText = returnText.replace(/<\/div>/gi, '\r\n')
      returnText = returnText.replace(/<\/li>/gi, '\r\n')
      returnText = returnText.replace(/<li>/gi, '  *  ')
      returnText = returnText.replace(/<\/ul>/gi, '\r\n')
      //-- remove BR tags and replace them with line break
      returnText = returnText.replace(/<br\s*[\/]?>/gi, '\r\n')

      //-- remove P and A tags but preserve what's inside of them
      returnText = returnText.replace(/<p.*?>/gi, '\r\n')
      returnText = returnText.replace(/<a.*href="(.*?)".*>(.*?)<\/a>/gi, ' $2 ($1)')

      //-- remove all inside SCRIPT and STYLE tags
      returnText = returnText.replace(/<script.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/script>/gi, '')
      returnText = returnText.replace(/<style.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/style>/gi, '')
      //-- remove all else
      returnText = returnText.replace(/<(?:.|\s)*?>/g, '')

      //-- get rid of more than 2 multiple line breaks:
      returnText = returnText.replace(/(?:(?:\r\n|\r|\n)\s*){2,}/gim, '\r\n\r\n')

      //-- get rid of more than 2 spaces:
      returnText = returnText.replace(/ +(?= )/g, '')

      //-- get rid of html-encoded characters:
      returnText = returnText.replace(/ /gi, ' ')
      returnText = returnText.replace(/&/gi, '&')
      returnText = returnText.replace(/"/gi, '"')
      returnText = returnText.replace(/</gi, '<')
      returnText = returnText.replace(/>/gi, '>')

      return returnText
    }

调用 =>
在这里插入图片描述

效果 =>
在这里插入图片描述
搬运自 => https://www.jianshu.com/p/74a6cbc21b41

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值