String comparison: Difference between revisions
Content added Content deleted
(→{{header|Raku}}: beware to normalization by default) |
(→{{header|Raku}}: add a String comparison example for the normalization trap) |
||
Line 3,609:
say "\c[KELVIN SIGN]".uniname;
# => LATIN CAPITAL LETTER K
my $kelvin = "\c[KELVIN SIGN]";
my $k = "\c[LATIN CAPITAL LETTER K]";
say ($kelvin eq $k); # True, lexically equal
say ($kelvin eqv $k); # True, generically equal
say ($kelvin === $k); # True, identical objects
</syntaxhighlight>
In most programming language the previous two objects wouldn't be equivalent but in Raku there are since normalization is applied by default automatically and can't be disabled.
It's officially identified as a common trap for string handling<ref>https://docs.raku.org/language/traps#All_text_is_normalized_by_default</ref>.
|