in reply to Twig delete not deleting the entire section?
Create a handler for the node you want to remove. Unfortunately, you can't use something like
because XML::Twig doesn't support the full XPath syntax:site[name[string() =~ /name2/]]
> XPath expressions are limited to using the child and descendant axis (indeed you can't specify an axis), and predicates cannot be nested.
You can do part of the work in Perl, though:
my %handlers = ( 'site' => sub { my ($twig, $cnt) = @_; $cnt->delete if grep $_->text =~ /name2/, $cnt->children('name'); } );
BTW, in XML::XSH2, you'd just
delete /sites/site[xsh:match(name,"name2")] ;
($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,
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Twig delete not deleting the entire section?
by paisani (Acolyte) on Mar 14, 2018 at 17:33 UTC | |
by poj (Abbot) on Mar 14, 2018 at 19:02 UTC |