如何用正则仅移除contentEditable div末尾的<div><br></div>
解决contentEditable末尾连续空div节点的正则方案
- 需求目标:仅移除HTML字符串末尾、有效内容之后连续出现的
<div><br></div>节点,不影响前面的内容 - 正则表达式:
/(\s*<div><br><\/div>)+$/gi - 正则解析:
\s*:匹配节点前可能存在的任意空白字符(空格、换行等)<div><br><\/div>:目标匹配的转义HTML节点+:匹配一个或多个连续的目标节点$:锚定字符串末尾,确保只匹配结尾的连续节点gi:全局匹配+忽略大小写标志(此处大小写不影响,保留原模式习惯)
- 示例使用(JavaScript):
const originalHtml = "... other content<div><br></div> <div>End of useful html string</div> <div><br></div> <div><br></div> <div><br></div>"; const cleanedHtml = originalHtml.replace(/(\s*<div><br><\/div>)+$/gi, ''); // 输出结果会保留所有有效内容,仅删除末尾的连续空div节点
内容的提问来源于stack exchange,提问作者electronixG
相关产品推荐
相关产品推荐

