in reply to Re: Re: "Not containing something" in substitution
in thread "Not containing something" in substitution
use strict; use warnings; use re 'eval'; my $begin = qr!\Q[xyz]!; my $end = qr!\Q[/xyz]!; my @match; my $re; $re = qr{ $begin ( (?: (?> (?:(?!=$begin|$end).)+ ) | (??{ $re }) )* ) $end }x; $_ = '[xyz][xyz]level 1.1 [xyz]level 2.1[/xyz] rest of 1.1 [/xyz]'; 1 while s!$re!<xyz>$1</xyz>!; print; __END__ <xyz><xyz>level 1.1 [xyz]level 2.1</xyz> rest of 1.1 </xyz>
Makeshifts last the longest.
|
|---|