It gives the following output, which is different to the expected one, but I'm not sure all the differences are wrong:open :F html input.html ; for my $h2 in //h2 { my $h1 = $h2/following-sibling::h1[1] ; my $chunk ; if $h1 { $chunk = $h2/following-sibling::text()[following-sibling::h1[1 +]=$h1][preceding-sibling::h2[1]=$h2] | $h2/following-sibling::*[not(self::h2)][following-sib +ling::h1[1]=$h1][preceding-sibling::h2[1]=$h2] ; } else { $chunk = $h2/following-sibling::text()[preceding-sibling::h2[1 +]=$h2] | $h2/following-sibling::*[not(self::h2)][preceding-sib +ling::h2[1]=$h2] ; } if $chunk { my $div := insert element div after $h2 ; xmove $chunk into $div ; } } my $divs := wrap div //h2 ; save :F html :f output.html ;
<h1>blah</h1> <p>blah</p> <p> </p> <div><h2>blah</h2></div> <div> <p>blah</p> <h3>blah</h3> <p>blah</p> </div> <div><h2>blah blah blah</h2></div> <div> <p>blah</p> </div> <h1>blah</h1> <div><h2>blah</h2></div> <div> </div> <div><h2>blah</h2></div> </body></html>
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,
In reply to Re: Wrapping HTML "sections" with a div
by choroba
in thread Wrapping HTML "sections" with a div
by nysus
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |