请教:如何提取目的字符串以及上下游字符串~~~~?

请教:如何提取目的字符串以及上下游字符串~~~~?

$a="AAAAAAAAAAAAAAATTTTTTTTTTTTTTGGGGGGGGGGGGGGGGCCCCCCCCCCCCAGTCATGCATGCGGGGGGGGGGGGGGGGGGGGGGGGGGCCCCCCCCCCCCAGTTAA";

现在通过模式匹配
while ($a=~/CAGT/ig){
     print "$&";
}
找到CAGT,那么怎么输出找到的这个字符串的上下游小于等于5个字符的字符串,
即怎么样才能输出CCCCCCAGTCATGC,并且能输出CCCCCAGTTAA

/.{5}CAGT.{5}/
以前~~~我也是这样写的~~~~~

不过存在一个问题,如果没有5个,只有四个~~~他就不匹配~~~~~


QUOTE:
原帖由 emacsnw 于 2008-9-8 18:32 发表
/.{5}CAGT.{5}/

您看还有别的办法没~~~~~
不太看的懂LZ的问题
也就是说如果~~~~搜索到的匹配有的左边只有四个字符或者只有三个等等情况(小于5),
~~~~这样的问题怎么来匹配~~~~~


QUOTE:
原帖由 wubingran 于 2008-9-8 18:56 发表
也就是说如果~~~~搜索到的匹配有的左边只有四个字符或者只有三个等等情况(小于5),
~~~~这样的问题怎么来匹配~~~~~

/.{1-5}CAGT.{1-5}/
这个好像也不~~行~~没有任何皮配的~~~~~
我刚试了~~~~~~~
改成

/.{1,5}CAGT.{1,5}/

就可以了~~~

谢谢~~~~~~~
好像上次也是你哈