是否有一个原因,当消毒一个字符串时,字符会转换为lowercase
而不是uppercase
?消毒大小写
我已经看到在许多语言这个习惯,但是在我目前的环境而言,我们会说Rails
和/或Javascript
是否有一个原因,当消毒一个字符串时,字符会转换为lowercase
而不是uppercase
?消毒大小写
我已经看到在许多语言这个习惯,但是在我目前的环境而言,我们会说Rails
和/或Javascript
无特殊原因,据我所知,但既不uppercasing也不lowercasing是在统一世界的全貌。
例如,德文字母ß
完全等同于ss
;它们都是小写字母,并且拼写为ß
的单词也可以拼写为ss
。
相反地,在土耳其语中,ı
(无点i)为从i
(虚线ⅰ)不同的,但除非的区域设置为土耳其语,uppercasing任一个产生I
(带点ASCII I)。这也改变了意义。你不想使用错误的;它们并不等同。因此,一些编程语言在Unicode标准的第3.13节中为每个案例折叠规则提供了更具体的“案例规范化”转换;出于这个原因,Python 3.3引入了str.casefold
。这很像.lower()
,但也会标准化为ß
到ss
之间的东西,因为它们在逻辑上是等价的(如果你是独立的,你不会希望看到仅在ß
与ss
之间被视为不同的两个字符串) 。
如果您的语言没有可用的大小写折叠,那么标准化为大写与小写的区别主要是惯例。
JavaScript有toLowerCase()和toUpperCase()。你可以使用!
我想你的问题的答案,但实际上源于unix系统决定几十年前使用区分大小写,并具有所有小写命令。这翻译成Apache的区分大小写的URL,并且要跨越O/S兼容,我们只是确保一切都是小写。
我想全部大写可能是,有时被使用,但它也讨厌:)
消毒到什么程度? HTML? – Anko
这完全取决于*你如何消毒,取决于你。告诉我们你的代码。 – Bergi
我并没有真正的代码,这只是我在各种消毒方法中已经注意到的一个惯例;这是他们似乎都将用户输入转换成小写字母作为消毒的一部分。基本上,我想知道是否有任何具体优势转换为小写与转换为大写。 –