i'm working on script , need split strings contain both html tags , text. i'm trying isolate text , elimanate tags
for example, want this:
string = '<p><span style="color:#ff3366;">a</span></p><p><span style="color:#ff3366;text-decoration:underline;">b</span></p><p><span style="color:#ff3366;text-decoration:underline;"><em>c</em></span></p>'; to split this:
separation = string.split(/some regexp/); and become:
separation[0] = "<span style="color:#ff3366;">a</span>"; separation[1] = "<span style="color:#ff3366;text-decoration:underline;">b</span>"; separation[2] = "<span style="color:#ff3366;text-decoration:underline;"><em>c</em></span>"; after split sepeartion string this:
stringnew = '<span style="color:#ff3366;">a</span>'; extendedseperation = stringnew.split(/some regexp/); extendedseperation[0] = "a"; extendedseperation[1] = "style="color:#ff3366;";
don't use regex reasons explained in comments.
instead, this:
create invisible node:
node = $("<div>").css("display", "none"); attach body:
$("body").append(node); now inject html node:
node.html(myhtmlstring); now can traverse dom tree , extract/render like, this:
ptags = node.find("p") // return <p> tags to content of tag use:
ptags[0].html() finally, clear node do:
node.html(""); this should enough going.
this way leverage internal parser of browser, suggested in comments.
Comments
Post a Comment