以下是使用Perl编写的代码示例,用于比较两个字符串并找到不匹配和匹配,并计算它们的数量:
use strict;
use warnings;
sub compare_strings {
my ($str1, $str2) = @_;
my $len1 = length($str1);
my $len2 = length($str2);
my $min_len = $len1 < $len2 ? $len1 : $len2;
my $match_count = 0;
my $mismatch_count = 0;
for (my $i = 0; $i < $min_len; $i++) {
my $char1 = substr($str1, $i, 1);
my $char2 = substr($str2, $i, 1);
if ($char1 eq $char2) {
$match_count++;
} else {
$mismatch_count++;
}
}
# 计算未匹配的字符数量
$mismatch_count += abs($len1 - $len2);
return ($match_count, $mismatch_count);
}
my $string1 = "abcdefg";
my $string2 = "abcxyz";
my ($match_count, $mismatch_count) = compare_strings($string1, $string2);
print "匹配的字符数量:$match_count\n";
print "不匹配的字符数量:$mismatch_count\n";
在此示例中,我们定义了一个名为compare_strings
的子例程,该例程接受两个字符串作为输入,并返回匹配和不匹配字符的数量。我们首先比较两个字符串的长度,然后遍历两个字符串的每个字符,并逐个比较它们。如果字符相等,则增加匹配计数器,否则增加不匹配计数器。最后,我们还要计算未匹配的字符数量,通过计算两个字符串长度的差值并加上它。最后,我们打印出匹配和不匹配字符的数量。
下一篇:比较两个字符串的部分内容