Введение

Определяет, различаются ли символы верхнего и нижнего регистра.

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

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

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

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

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

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

В файловых системах 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 стали сохранять регистр как расширение поддержки длинных имен файлов. Более поздние файловые системы Windows, такие как NTFS, внутренне чувствительны к регистру, и файлы readme.txt и Readme.txt могут сосуществовать в одном каталоге. Однако, для практических целей, имена файлов ведут себя как нечувствительные к регистру для пользователей и большинства программ. Это может вызывать проблемы для разработчиков или программного обеспечения, портированного из Unix-подобных сред, аналогичные проблемам с нечувствительными к регистру файловыми системами в macOS.