- 论坛徽章:
- 0
|
如果要像split那样返回数组,有简便些的办法吗?
感觉一个个push看起来不太舒服。
我暂时是这样解决的:
- my $groups='ID=12002.t00840;Name=CSLA1 - cellulose synthase-like family A; mannan synthase, expressed';
- # patch for TIGR GFF3
- $groups=~ s/; /@@@@@/g;
- $groups=~ s/, /#####/g;
- my @groups = split(/\s*;\s*/, $groups);
- for my $group (@groups) {
- my ($tag,$value) = split /=/,$group;
- $tag = unescape($tag);
- my @values = map {unescape($_)} split /,/,$value;
- for my $v ( @values ) {
- $v=~s/@@@@@/; /g; # patch for TIGR GFF3
- $v=~s/#####/, /g; # patch for TIGR GFF3
- $feat->add_tag_value($tag,$v);
- }
- }
复制代码
[ 本帖最后由 galaxy001 于 2008-6-29 16:32 编辑 ] |
|