in reply to Text parsing. Processing scopes and subscopes.

Your spec is pretty minimal, but here's one way to achieve your goal:

#! perl -slw use strict; use Data::Dump qw[ pp ]; my $text = do{ local $/; <DATA>; }; my( $n, @scopes ) = 1; 1 while $text =~ s[ ( \{ [^{}]+ \} ) ]{ push @scopes, $1; '_' . $n++ . '_'; }gex; s[scope (\d+) text][processed text $1]g for @scopes; $text =~ s[_${ \( $_+1 ) }_]{ $scopes[ $_ ] }eg for reverse 0 .. $#sco +pes; print $text; __DATA__ text text {scope 4 text {scope 2 text {scope 1 text} scope 2 text} sco +pe 4 text {scope 3 text} scope 4 text } text text

Output:

C:\test>1139932 text text {processed text 4 {processed text 2 {processed text 1} proce +ssed text 2} processed text 4 {processed text 3} processed text 4 } t +ext text

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". I knew I was on the right track :)
In the absence of evidence, opinion is indistinguishable from prejudice.
I'm with torvalds on this Agile (and TDD) debunked I told'em LLVM was the way to go. But did they listen!