解决方法
这显示了直截了当的方式.排序块将$aa和$bb分别设置为$a和$b中的数字值.然后< =>用于数字比较它们.
除非基本技术证明太慢,否则不需要更加模糊的转换方法.
use strict; use warnings; use 5.010; my @arr = ( "gene1 (100)",); my @sorted = sort { my ($aa) = $a =~ / \( (\d+) \) /x; my ($bb) = $b =~ / \( (\d+) \) /x; $aa <=> $bb; } @arr; say for @sorted;
产量
gene2 (50) gene1 (100) gene3 (120)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。