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
