Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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 除去特定标签以外的标签_Javascript_Jquery_Html - Fatal编程技术网

Javascript 除去特定标签以外的标签

Javascript 除去特定标签以外的标签,javascript,jquery,html,Javascript,Jquery,Html,我找不到一个与我的场景相匹配的问题,出于某种原因我也无法解决这个问题。。。jQuery是可以的,但本地(或angularJS/jQuery Lite)是首选 我有几个自定义标记的html。我想保留一些标记(它们是空的),但只保留所有其他标记的文本。我没有直接操作DOM——我输入了一个HTML,需要输出HTML。e、 g: CTAGCTCTCTCTCTCTCTCTGCTGGAGAGATAACGAGAGAGAGAATATCTAGATTGGTTCAGATAGTTGAATAGCAAAACTATT 到 C

我找不到一个与我的场景相匹配的问题,出于某种原因我也无法解决这个问题。。。jQuery是可以的,但本地(或angularJS/jQuery Lite)是首选

我有几个自定义标记的html。我想保留一些标记(它们是空的),但只保留所有其他标记的文本。我没有直接操作DOM——我输入了一个HTML,需要输出HTML。e、 g:

CTAGCTCTCTCTCTCTCTCTGCTGGAGAGATAACGAGAGAGAGAATATCTAGATTGGTTCAGATAGTTGAATAGCAAAACTATT

CTAGCTCTCTCTGCTGGAGAGATAACGAGAGAGAATCTAGATGTTCAT GATCATAGCTGAAT tagccaaacttatt

空白不重要。最后,我会把开头和结尾也拉出来,这样它们的形式就不太重要了(例如,可能是xx)


谢谢

这可以在没有dom的情况下完成所需的标记工作:

var str = IN.value;
var str2= str.replace(/\s*<(\/?)(\w+)([^>]*?)>\s*/g,  function(j,b,a,c){
  return   ({start:1, end:1}[a]) ?   ("<"+b+a+c+">")  : "";
});

var end='CTAGCTCTCTGGAGATTAACGAGGAGAAATACTAGAtTGGTTCAT<start feat="1" class="ng-scope"></start>GATCATAAgcttgaat<end feat="1" class="ng-scope"></end>tagccaaacttatt';

str2==end // true
var str=IN.value;
var str2=str.replace(/\s*]*?)>\s*/g,函数(j,b,a,c){
返回({start:1,end:1}[a])?(“”):“”;
});
var end='CTAGCTCTCTCTCTCTCTCTGCTGGAGAGATAACGAGAGAGAGAATATCTAGATTGGTTCAGATAGTTGAATAGCAATACTATT';
str2==end//true
我想你并不真的想/需要删除类attrib,因为你没有提到它。
如果您这样做,那么它会变得更复杂,但可能是可以做到的…

HTML应该被解析为HTML,一旦您操作了DOM元素,删除了您想要的内容等。您可以将其提取为字符串,如下所示:

var html = 'your HTML string here';

var markup = $.map($('<div />', {html:html}).children(), function(el) {
    return /(start|end)/.test(el.tagName.toLowerCase()) ? el.outerHTML : $(el).text();
}).join('');
var html='your html string here';
var markup=$.map($('',{html:html}).children(),函数(el){
return/(start | end)/.test(el.tagName.toLowerCase())?el.outerHTML:$(el.text();
}).加入(“”);

最初的示例太做作了,看看新示例是否更有意义?@adeneo:它不需要解析,代码不是html,这不是解析器。。。我尽量避免使用dom,为什么不操纵dom呢?应该可以将HTML解析为DOM片段,并用它们的
innerText
替换不需要的节点。