stringtranslate.com

Чувствительность к регистру

Строчная «а» и заглавная «А» — это два варианта регистра первой буквы английского алфавита .

В компьютерах чувствительность к регистру определяет, рассматриваются ли заглавные и строчные буквы как разные ( чувствительные к регистру ) или эквивалентные ( нечувствительные к регистру ). Например, когда пользователи, заинтересованные в изучении собак, ищут электронную книгу , «собака» и «Собака» имеют для них одинаковое значение. Таким образом, они запрашивают поиск без учета регистра. Но когда они ищут в онлайн-энциклопедии информацию об Организации Объединенных Наций , например, или что-то, в чем нет двусмысленности относительно заглавных букв и двусмысленности между двумя или более терминами, сокращенными за счет заглавных букв, они могут предпочесть поиск с учетом регистра.

Области значимости

Чувствительность к регистру может различаться в зависимости от ситуации:

В языках программирования

Некоторые языки программирования чувствительны к регистру для своих идентификаторов ( C , C++ , Java , C# , Verilog , [2] Ruby , [3] Python и Swift ). Другие нечувствительны к регистру (т. е. нечувствительны к регистру), такие как ABAP , Ada , большинство BASIC (исключением является BBC BASIC ), Common Lisp , Fortran , SQL (для синтаксиса и для некоторых реализаций поставщиков, например Microsoft SQL Server , самих данных) [NB 2] Pascal , Rexx и ooRexx . Существуют также языки, такие как Haskell , Prolog и Go , в которых заглавные буквы идентификатора кодируют информацию о его семантике . Некоторые другие языки программирования имеют различную чувствительность к регистру; в PHP , например, имена переменных чувствительны к регистру, но имена функций не чувствительны к регистру. Это означает, что если функция определена в нижнем регистре, ее можно вызвать в верхнем регистре, но если переменная определена в нижнем регистре, на нее нельзя ссылаться в верхнем регистре. Nim нечувствителен к регистру и игнорирует подчеркивания, пока совпадают первые символы. [4]

В текстовом поиске

Операция текстового поиска может быть чувствительной или нечувствительной к регистру, в зависимости от системы, приложения или контекста. Пользователь может во многих случаях указать, чувствителен ли поиск к регистру, например, в большинстве текстовых редакторов, текстовых процессоров и веб-браузеров. Поиск без учета регистра более всеобъемлющ, находя «Language» (в начале предложения), «language» и «LANGUAGE» (в заголовке заглавными буквами); поиск с учетом регистра найдет компьютерный язык «BASIC», но исключит большинство нежелательных вхождений слова. Например, поисковая система Google в основном нечувствительна к регистру, без возможности поиска с учетом регистра. [5] В Oracle SQL большинство операций и поисков по умолчанию чувствительны к регистру, [6] в то время как в большинстве других СУБД поиск SQL по умолчанию нечувствителен к регистру. [7]

Иногда говорят, что операции, нечувствительные к регистру, сворачивают регистр , исходя из идеи сворачивания таблицы кодов символов таким образом, чтобы заглавные и строчные буквы совпадали.

В файловых системах

В файловых системах в Unix-подобных системах имена файлов обычно чувствительны к регистру (могут быть отдельные файлы readme.txt и Readme.txt в одном каталоге). MacOS несколько необычна тем, что по умолчанию она использует HFS+ и APFS в режиме без учета регистра (так что не может быть readme.txt и Readme.txt в одном каталоге), но с сохранением регистра (так что файл, созданный как readme.txt, отображается как readme.txt, а файл, созданный как Readme.txt, отображается как Readme.txt) по умолчанию. Это вызывает некоторые проблемы для разработчиков и опытных пользователей , поскольку большинство файловых систем в других Unix-подобных средах чувствительны к регистру, и, например, дерево исходного кода для программного обеспечения для Unix-подобных систем может иметь как файл с именем Makefile, так и файл с именем makefile в одном каталоге. Кроме того, некоторые установщики Mac предполагают отсутствие чувствительности к регистру и не работают в файловых системах, чувствительных к регистру.

Старые файловые системы MS-DOS FAT12 и FAT16 были нечувствительны к регистру и не сохраняли его, поэтому файл, имя которого введено как readme.txt или ReadMe.txt, сохранялся как README.TXT. Позже, с VFAT в Windows 95, файловые системы FAT стали сохранять регистр как расширение поддержки длинных имен файлов . [8] Более поздние файловые системы Windows, такие как NTFS, внутренне чувствительны к регистру, и readme.txt и Readme.txt могут сосуществовать в одном каталоге. Однако на практике имена файлов ведут себя как нечувствительные к регистру, что касается пользователей и большинства программ. [9] Это может вызвать проблемы для разработчиков или программного обеспечения, поступающего из Unix-подобных сред, аналогичные проблемам с нечувствительными к регистру файловыми системами macOS.

Примечания

  1. ^ Ссылка «Friendly Fire» должна проходить через квалификатор (разрешение неоднозначности) в статье Википедии, чтобы избежать ошибки WP:INTDAB .
  2. ^ Хотя можно явно задать сортировку отдельной базы данных или столбца с учетом регистра

Ссылки

  1. ^ См. WP:DIFFCAPS
  2. ^ Керниган, Брайан В .; Ритчи, Деннис М. (февраль 1978 г.). "Глава 2: Типы, операторы и выражения". Язык программирования C (1-е изд.). Энглвуд Клиффс, Нью-Джерси: Prentice Hall. стр. 33. ISBN 0-13-110163-3.
  3. ^ Мацумото, Юкихиро (январь 2002 г.). "Глава 2: Основы языка". Ruby in a nutshell (1-е изд.). O'Reilly Media. стр. 9. ISBN 0-596-00214-9.
  4. ^ "Руководство по Nim: Равенство идентификаторов". nim-lang.github.io . Получено 27.04.2019 .
  5. ^ "регистрозависимый поиск - регистрозависимый поиск Google - Хостинг проектов Google". code.google.com . Получено 2013-05-20 .
  6. ^ "2.10 Создание запросов без учета регистра". Oracle SQL Developer User's Guide, выпуск 1.5 (PDF) . Oracle Corporation . Август 2013 г.
  7. ^ "C.5.5.1 Чувствительность к регистру при поиске строк". MySQL 5.0 Reference Manual . MySQL . Получено 2013-05-20 .
  8. ^ "Чувствительность к регистру в подсистеме для приложений на базе UNIX". Microsoft Learn . 2005-08-22 . Получено 2013-05-20 .
  9. ^ "Имена файлов чувствительны к регистру на томах NTFS". Поддержка Microsoft . 2006-11-01. Архивировано из оригинала 23 июля 2013 г. Получено 2013-05-20 .