在这里插入图片描述

1 问题背景

对接支付渠道的发起支付的接口的时候,要求传商品长描述,而商品长描述有很多html网页标签,比如<h1></h1>、<p></p>等。需要将这些标签剔除掉,只传纯文本。

2 思路

用正则表达式,把这些标签都匹配上,然后用空字符串替换掉。

3 解决方案

代码如下:


public class Processor {
    private static final String REG_EX = "</?[^>]+>";

    public static String removeTag(String rawText) {
        String result = rawText.replaceAll(REG_EX, "");
        return result;
    }

}

4 解释

采用的正则表达式是</?[^>]+>

解释:

  • < :表示匹配所有的<
  • /?:表示/出现0次或1次。?就是前面的字符出现0次或1次
  • [^>]+:表示除了>以外任意字符,至少1个或n个。[^x]表示除了x以外,+表示出现1个或n个
  • >:最后的>表示以>作为结尾
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐