求教关于perl的模式匹配问题
文本如下:
>1FFK:1|PDBID|CHAIN|SEQUENCE
PRVELEIPEDVDAEQDHLDITVEGDNGSVTRRLWYPDIDVSVDGDTVVIESDEDNAKTMSTIGTFQSHIENMFHGVTEGW
>1FFK:9|PDBID|CHAIN|SEQUENCE
UUAGGCGGCCACAGCGGUGGGGUUGCCUCCCGUACCCAUCCCGAACACGGAAGAUAAGCCC
...
...
以">"为标记的行为序列的描述,有的行全都由A,C,G,U(组成顺序不一样)四个字符组成(例如第四行),有的行则由更多的字符组成(例如第二行)。我想请问,怎样是用模式匹配来分别匹配这样的行,然后输出呢?还有怎么匹配以">"为标记的行呢?诚求各位牛人帮助,感激不尽!
[解决办法]
/tmp/ cat augc.pl
while ($l=<>) {
if ($l =~ /^>/) {
print("Start with >:", $l);
} elsif ($l =~ /^[AUGC]+$/) {
print("RNA sequence: ", $l);
} else {
print ("Others: ", $l);
}
}
/tmp/ perl augc.pl < augt-test.txt
Start with >:>1FFK:1
[解决办法]
PDBID
[解决办法]
CHAIN
[解决办法]
SEQUENCE
Others: PRVELEIPEDVDAEQDHLDITVEGDNGSVTRRLWYPDIDVSVDGDTVVIESDEDNAKTMSTIGTFQSHIENMFHGVTEGW
Start with >:>1FFK:9
[解决办法]
PDBID
[解决办法]
CHAIN
[解决办法]
SEQUENCE
RNA sequence: UUAGGCGGCCACAGCGGUGGGGUUGCCUCCCGUACCCAUCCCGAACACGGAAGAUAAGCCC