in reply to How do I put bracket on substring(s) of a string?

use strict; use warnings; my $s1 ='CCCATCTGTCCTTATTTGCTG'; my @a1 = qw(ATCTG ATTTG); my $s2 ='ACCCATCTGTCCTTGGCCAT'; my @a2 = qw(CCATC); my $s3 ='CCACCAGCACCTGTC'; my @a3 = qw(CCACC CCAGC GCACC); my $s4 ='CCCAACACCTGCTGCCT'; my @a4 = qw(CCAAC ACACC); put_bracket($s1, @a1); put_bracket($s2, @a2); put_bracket($s3, @a3); put_bracket($s4, @a4); sub put_bracket { my $str = shift; $str =~ s/$_/[$&]/ for @_; return $str }

Replies are listed 'Best First'.
Re: Answer: How do I put bracket on substring(s) of a string?
by toolic (Bishop) on Sep 10, 2008 at 13:25 UTC
    When I print the string returned by each of your put_bracket calls, the output does not match the required output for 3 and 4:
    CCC[ATCTG]TCCTT[ATTTG]CTG AC[CCATC]TGTCCTTGGCCAT [CCACC]A[GCACC]TGTC C[CCAAC]ACCTGCTGCCT