如何用JavaScript替换字符串中的ASCII字符与HTML实体?
解决HTML实体移除问题
你可以用下面的正则表达式匹配所有以&#开头、分号;结尾的HTML实体(涵盖十进制和十六进制格式),结合原有代码完成移除操作:
// 先移除HTML标签 var Summary = HtmlString.replace(/<\/?[^>]+>/gi, ''); // 再移除所有&#开头的实体 Summary = Summary.replace(/&#(?:\d+|x[0-9a-fA-F]+);/g, '');
正则说明
&#:匹配实体的固定起始部分(?:\d+|x[0-9a-fA-F]+):非捕获组,匹配两种实体格式:\d+:十进制数字序列(比如8226)x[0-9a-fA-F]+:十六进制格式,以x开头,后跟大小写字母或数字(比如x2022)
;:匹配实体的结尾分号g:全局匹配标志,确保替换所有符合条件的实体
内容的提问来源于stack exchange,提问作者Adnan
相关产品推荐
相关产品推荐

