用正则表达式剔除文本中的html标签
·

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个>:最后的>表示以>作为结尾
更多推荐
所有评论(0)