Perl我会使用fc而不是uc吗?

前端之家收集整理的这篇文章主要介绍了Perl我会使用fc而不是uc吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
什么时候你需要使用fc(),什么时候uc()会失败?

Perl fc documentation

解决方法

fc用于不区分大小写的比较.

uc($a) cmp uc($b)    # XXX
lc($a) cmp lc($b)    # XXX
fc($a) cmp fc($b)    # ok

这会产生影响的一个例子:

lc uc fc
-- -- -- --
ss ss SS ss
SS ss SS ss
ß  ß  SS ss
ẞ  ß  ẞ  ss

注意fc(“ß”)eq fc(“ẞ”),但是uc(“ß”)ne uc(“ẞ”).

注意fc(“ß”)eq fc(“ss”),但lc(“ß”)ne lc(“ss”).

该表是使用生成

use strict;
use warnings;
use feature qw( fc );

use open ':std',':encoding(UTF-8)';

my $ss = "\N{LATIN SMALL LETTER SHARP S}";
my $SS = "\N{LATIN CAPITAL LETTER SHARP S}";

printf("   lc uc fc\n");
printf("-- -- -- --\n");
printf("%-2s %-2s %-2s %-2s\n",$_,lc($_),uc($_),fc($_))
   for 'ss','SS',$ss,$SS;

猜你在找的Perl相关文章