Java/Js下使用正则表达式匹配嵌套Html标签
js正则表达式替换HTML标签以及空格(& nbsp; )
js代码:
function filter(text) { VAR reg = /[^> ]+> /g; //1、全局匹配g肯定忘记写,2、> 标签中不能包含标签实现过滤HTML标签 text = text.replace(reg, ''); //替换HTML标签 text = text.replace(/& nbsp; /ig, ''); //替换HTML空格 return text; } ;
在AngularJS中使用过滤器过滤富文本数据
app.filter('qxhtml', function () { return function (text) { var reg = /[^> ]+> /g; text = text.replace(reg, ''); text = text.replace(/& nbsp; /ig, ''); if (text.length > 50) { text = text.substring(0, 50) + "..."; } return text; } ; } );
使用过滤器
div class="desc">
{
{
y.Description| qxhtml}
}
/div>
下面是其他网友的补充
js如何使用正则表达式实现过滤HTML标签?(/[^> ]+> /g)
一、总结(点击显示或隐藏总结内容)
js进阶正则表达式实现过滤HTML标签(> 标签中不能包含标签实现过滤HTML标签:/[^> ]+> /g)
var reg=/[^> ]+> /g
1、全局匹配g肯定不能忘记写
2、>
标签中不能包含标签实现过滤HTML标签
二、js进阶正则表达式实现过滤HTML标签
实例描述:将一段带有HTML标签的文本的HTML标签过滤掉,转化为纯文本输出
三、代码
!DOCTYPE html> html lang="en"> head> meta charset="UTF-8"> tITle> 过滤HTML标签/title> style type="text/css"> textarea{ width: 60%; font-Size: 18px; background: rgba(100,200,50,0.3); } #text2{ background:rgba(200,100,50,0.3); } /style> /head> body> textarea id="text1" rows="10" cols="50"> /textarea> br> br> input type="button" id="BTn1" value="过滤HTML标签"> br> br> textarea id="text2" rows="10" cols="50"> /textarea> script type="text/javascript"> var btn1=document.getElementById('btn1') var text1=document.getElementById('text1') var text2=document.getElementById('text2') btn1.onclick=function (){ //var reg=/.+> /g var reg=/[^> ]+> /g //1、全局匹配g肯定忘记写 2、> 标签中不能包含标签实现过滤HTML标签 text2.value=text1.value.replace(reg,'') } /script> /body> /html>
js 正则表达式去除html字符中所有的标签(img标签除外)
废话不多说,直接上代码:
description.replace(/(?!img).*?> /g, "");
如果保留img,p标签,则为:
description.replace(/(?!img|p|\/p).*?> /g, "");
在js中/需要用转义字符。
通用 HTML 标签区配正则
最近看网站日志,发现有人在博客上转了我不知道几年前写的一个匹配 HTML 标签的正则,刚好最近也在做一些相关的事情,顿时来了兴趣。就拿回来改改,成了下面这样,可能会有一些 case 遗漏,欢迎修改,已知在内嵌 script> 复杂内容的处理能力较弱,不过对纯 HTML 来说已经够用,拿来做一些分析工具还是不错滴。
script type="text/javascript"> var str = "br /> br/> br> br > 中文> div> div id=a> 无忧脚本img src=\"http://BBS.51js.COM/images/default/LOGo.gif\" width=\"191\" height='75' border=0 onload=\"if(testver> 0 & & testver500)alert('test'); \" \n onerror='alert(\"test\")' /> img src=xxx alt=\"hello\njust a test!\"> /div> hr > script type=\"test/javascript\" defer> alert(\"just a test!\"); \/script> Hello.input type=text value=\"无忧脚本\"> br / > img \"\" > / > !-- 注释 --> ucren> !-- 再注> 释 --> img alt=' title='\"' /> b> 123/b> 123,34> 1& lt; b& gt; img src=\"http://bbs.51js.com/images/old51js/logo.gif\" /> !-- 三注释> > > --> "; var reg = /(?:(?:\/?[A-Za-z]\w*\b(?:[=\s](['"]?)[\s\S]*?\1)*)|(?:!--[\s\S]*?--))\/?> /g; alert(str.match(reg).join("\n----------------------------------------------------\n")); /script>
在线测试
var str = "
[br/]
无忧脚本0 &
&
testver
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Java/Js下使用正则表达式匹配嵌套Html标签
本文地址: https://pptw.com/jishu/595635.html