比较时为什么要将字符串转换为大写?

gss*_*ss3 2 c#

我经常读到将字符串转换为大写字母是一种很好的做法(我认为Hanselman很久以前就在他的博客上提到了这一点),当该字符串要与另一个字符串进行比较时(也应该转换为大写字母) .

这有什么好处?我为什么要这样做(或者在我不应该这样做的情况下)?

谢谢

egl*_*ius 7

不,你应该使用enum选项,允许不区分大小写的comparisson(字符串比较).

确保使用您正在使用的比较方法的重载,即String.Compare,String.Equals


Guf*_*ffa 5

在进行比较时您应该转换为大写而不是小写的原因(实际上不可能进行不区分大小写的比较),因为某些(不常用的)字符不会在不丢失信息的情况下转换为小写.

某些大写字符没有等效的小写字符,因此将它们设为小写会将它们转换为不同的小写字符。这可能会导致比较中出现误报。