0
的数量如何找到number of of each 2 consecutive characters AA, AC,AG,AT,CC,CA...
在这样的顺序:字符串在Perl匹配,找到匹配
$sequence = 'AACGTACTGACGTACTGGTTGGTACGA'
重叠是不允许即$顺序从左至右AA CG TA CT包含.. ..和不AA AC CG ......
的数量如何找到number of of each 2 consecutive characters AA, AC,AG,AT,CC,CA...
在这样的顺序:字符串在Perl匹配,找到匹配
$sequence = 'AACGTACTGACGTACTGGTTGGTACGA'
重叠是不允许即$顺序从左至右AA CG TA CT包含.. ..和不AA AC CG ......
@result = $subject =~ m/[ACTG][ATGC]/g;
print scalar(@result);
编辑,因为你完全改变了你的问题:
use strict;
my $subject = "AACGTACTGACGTACTGGTTGGTACGA";
my %results =();
while ($subject =~ m/[ACTG][ATGC]/g) {
# matched text = $&
if(exists $results{$&})
{
$results{$&}++
}
else
{
$results{$&} = 1;
}
}
foreach (sort keys %results) {
print "$_ : $results{$_}\n";
}
输出:
AA : 1
CG : 3
CT : 2
GA : 1
GG : 2
TA : 3
TT : 1
最后编辑:希望...感谢@canavanin
use strict;
my $subject = "AACGTACTGACGTACTGGTTGGTACGA";
my %results =();
while ($subject =~ m/[ACTG][ATGC]/g) {
# matched text = $&
$results{$&}++
}
foreach (sort keys %results) {
print "$_ : $results{$_}\n";
}
我想了''...在这个问题意味着其他序列。 – Matteo
yes AA AT AG AC CC CG CT CA TA TC TG TT GA GC GT GG – AWRAM
@Matteo我想,OP应该以某种方式扩展它,或给出他想要匹配什么的另一种描述。 – FailedDev