First here is a code sample
# this is easy...
# grab a string
my $sa ='random,junk no,one,cares about(I,Want,This,stuff) but, (not,t
+his) stuff which&might have-random characters';
# extract the string between the first set of ( and )
my ($sb) = $sa =~ m/\((.+?)\)/;
# split the string on ,
my @ab = split(',',$sb);
# join and butress the string with ^
my $sc = '^' . join('^',@ab) . '^';
Obviously, I can do other things like use s/// instead of split and join to substitute , for ^. The key here is I wonder if it's possible to capture and split in one go during the match. Effectively not having the interim $sb and going straight to @sb
It seems like I should have the RegEx engine start matching between the first ( and ), but I can't get it to create groups inside the ()'s while ignoring the second ()'s.
Looking at the Perl Docs it seems like the answer is teasing me, but I just don't see it. Any suggestions?