Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中将特定标记剥离到div中?_Javascript_Jquery_Html_Regex - Fatal编程技术网

如何在Javascript中将特定标记剥离到div中?

如何在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().

我有这个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().each(
  function() {
     var strToStrip = $('.myDiv').html();
     if ( this.tagName != 'A' ) {
        // Strip tag element if tagName is not 'A'
        // and replace < or > with &lt; or &gt;
        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, "&lt;");
var result = temp.replace(/<\/[^a][a-z]*>/g, "&gt;");
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
元素。谢谢你…如果我想替换”,是否有一个正则表达式可以这样做?