如何在Javascript中将特定标记剥离到div中?
我有这个html代码如何在Javascript中将特定标记剥离到div中?,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我有这个html代码 <div class="myDiv"> <a href="" title="">My link</a> <p>This is a paragraph</p> <script>//This is a script</script> </div> 这是一段 //这是一个脚本 我要说的是javascript: $('.myDiv').children().
<div class="myDiv">
<a href="" title="">My link</a>
<p>This is a paragraph</p>
<script>//This is a script</script>
</div>
这是一段
//这是一个脚本
我要说的是javascript:
$('.myDiv').children().each(
function() {
var strToStrip = $('.myDiv').html();
if ( this.tagName != 'A' ) {
// Strip tag element if tagName is not 'A'
// and replace < or > with < or >
strToStrip.replace(/(<([^>]+)>)(?!(a))/ig, "");
}
}
$('.myDiv').children()。每个(
函数(){
var strotstrip=$('.myDiv').html();
如果(this.tagName!=“A”){
//如果标记名不是“A”,则带标记元素
//并用或替换
strotstrip.replace(/(]+)>)(?!(a))/ig,“”;
}
}
))
如何剥离除a
元素之外的所有标记?
我只需要链接和带标签,如果它不是链接标签。
我找不到这段代码有什么问题,我可以用什么正则表达式来做这件事
有什么帮助吗?您可以使用正则表达式替换字符串的方法
var html = $("#main").html();
var result = html.replace(/[\<\>\/]/g,'');
alert(result);
var html=$(“#main”).html();
var result=html.replace(/[\\/]/g',);
警报(结果);
所示示例请尝试以下正则表达式示例:
var strToStrip = $('.myDiv').html();
var temp = strToStrip.replace(/<[^a\/][a-z]*>/g, "<");
var result = temp.replace(/<\/[^a][a-z]*>/g, ">");
alert(result);
var strotstrip=$('.myDiv').html();
var temp=strotstrip.replace(//g,“”);
var result=temp.replace(//g,“”);
警报(结果);
我这个问题的目的是想弄清楚twitter是如何通过使用@
或#
来实现他的标签或用户组的。去看最后的结果我做了,但没有想要的结果result@user3852377这是如何保存a标记的?我使用这个正则表达式:/]+(>|$)/g
,这会删除所有标记,甚至是link element的标记。op的问题是“除了a元素之外,我如何删除所有标记?”是的,而不是剥离a
它会删除标记,我找不到最好的正则表达式(你能去掉所有的a标签吗?或者你想要页面的其余部分吗?你真的需要在“剥离”之前将div的整个内容转换成字符串吗?(通过剥离,我假设你指的是将每个标签的内容设置为```)每个标记的html?如果您只是尝试删除每个标记中的html,除了
。然后将id
添加到div
和a
元素,您将获得一些简单的javascript。TBH,在我发布答案之前,我不知道您试图询问什么,我想知道您是否要删除innerHtml
标记或删除标记?你知道,我有一个textarea
,文本区域的内容将设置为div
,因此如果我在textarea中输入一个元素,它将显示在div
中,如果我输入脚本
元素,该脚本将被执行,为什么,我需要ip all标记,除了a
元素。谢谢你…如果我想替换