繁体   English   中英

按元素和类拆分html

[英]Split html by element and class

我有一个如下的Javascript HTML字符串,

var stringCheck = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data<span class="spanClass">XYZ</span>';

现在想分割此字符串,使得在一个变量中我确实具有

var split1 = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data';

第二个变量如下

var split2 = '<span class="spanClass">XYZ</span>';

我想拆分具有spanClass类的span元素。 有谁知道我如何使用RegEx或其他方式制作它?

应该对DOM和jQuery进行一些操作-比RegEx更受青睐:

 var stringCheck = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data <span class="spanClass">XYZ</span>'; function splitText(html) { var $div = $("<div/>").html(html), $span = $div.find("span").remove(); return [$span[0].outerHTML,$div[0].innerHTML]; // you may want to add a trim too } console.log(splitText(stringCheck)); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 

您可以创建一个jQuery对象并提取所需的文本。

 var stringCheck = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data <span class="spanClass">XYZ</span>'; //Create a jQuery object var div = $('<div>').html(stringCheck); //Extract span var str1 = div.children('span.spanClass').prop('outerHTML'); //Remove it div.children('span.spanClass').remove(); //Get rest of string var str = div.html(); console.log(str); console.log(str1); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

为此,您可以使用正则表达式按<span>之前的空格进行拆分,如下所示:

 var stringCheck = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data <span class="spanClass">XYZ</span>'; var arr = stringCheck.split(/\\s(?=<span)/i); console.log(arr); 

使用这种东西

 var String = 'Test<a href="http://testdomain.com?data=new" target="_blank">partial string data</a> Test Data <span class="spanClass">XYZ</span>'; String = String.replace(/\\s(?=<span class="spanClass")/ig, "|||"); var arr = String.split("|||"); console.log(arr); 

**这将拆分为所有具有spanClass类的spanClass **

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM