>perl -wMstrict -le
"print '----- output -----';
while (my ($word1, $word2) = splice @ARGV, 0, 2) {
print qq{:$word1: and :$word2: initial letters },
first_letter_matches($word1, $word2)
? 'same' : 'different';
}
sub first_letter_matches {
my ($w1, $w2) = @_;
return $w1 =~ m{ \A ([^\W\d_]) }xmso
&& $w2 =~ m{ \A $1 }xmsi
;
}
"
a a a A Ab abc b b abcd A A1% a2#
"" "" "" a a "" a b a bc ab c 123 123 %# %#
----- output -----
:a: and :a: initial letters same
:a: and :A: initial letters same
:Ab: and :abc: initial letters same
:b: and :b: initial letters same
:abcd: and :A: initial letters same
:A1%: and :a2#: initial letters same
:: and :: initial letters different
:: and :a: initial letters different
:a: and :: initial letters different
:a: and :b: initial letters different
:a: and :bc: initial letters different
:ab: and :c: initial letters different
:123: and :123: initial letters different
:%#: and :%#: initial letters different