Пустой строкой - Empty string

В формальной теории языка , в пустую строку , или пустое слово , это уникальная строка нулевой длины.

Формальная теория

Формально строка представляет собой конечную упорядоченную последовательность символов, таких как буквы, цифры или пробелы. Пустая строка - это особый случай, когда последовательность имеет нулевую длину, поэтому в строке нет символов. Есть только одна пустая строка, потому что две строки отличаются только в том случае, если они имеют разную длину или разную последовательность символов. В формальных трактовках пустая строка обозначается буквой ε, иногда Λ или λ .

Пустую строку не следует путать с пустым языком , который является формальным языком (т. Е. Набором строк), не содержащим никаких строк, даже пустой строки.

Пустая строка имеет несколько свойств:

В контекстно-свободных грамматик , A правило производства , что позволяет символ , чтобы произвести пустая строка известна как е-производства, а символ называется «обнуляемым».

Использование в языках программирования

В большинстве языков программирования строки являются типом данных . Строки обычно хранятся в разных местах памяти . Это означает, что одна и та же строка (например, пустая строка) может храниться в двух или более местах памяти.

Таким образом, в памяти может быть несколько пустых строк, в отличие от определения формальной теории, для которого возможна только одна пустая строка. Однако функция сравнения строк укажет, что все эти пустые строки равны друг другу.

Даже строка нулевой длины может потребовать памяти для ее хранения, в зависимости от используемого формата. В большинстве языков программирования пустая строка отличается от нулевой ссылки (или нулевого указателя), поскольку пустая ссылка вообще не указывает ни на какую строку, даже на пустую строку. Пустая строка - это допустимая строка, с которой должно работать большинство строковых операций. Некоторые языки лечить некоторые или все из следующих схожим образом: пустые строки, ссылки нулевые, целое число 0, то число с плавающей точкой 0, логическое значение фальшивыми , то ASCII символ NUL , или другие подобные ценности.

Пустая строка обычно представляется аналогично другим строкам. В реализациях с символом завершения строки (строки с нулевым символом в конце или строки простого текста) пустая строка обозначается немедленным использованием этого символа завершения.

λ представление Языки программирования
"" C , C # , C ++ , Go , Haskell , Java , JavaScript , Julia , Lua , M , Objective-C (в виде строки C), OCaml , Perl , PHP , Python , Ruby , Scala , Standard ML , Swift , Tcl , Visual Базовый .NET
'' APL , Delphi , JavaScript , Matlab , Pascal , Perl , PHP , Python , Ruby , Smalltalk , SQL
{'\0'} C , C ++ , Objective-C (в виде строки C)
std::string() C ++
""s C ++ (начиная со стандарта 2014 г. )
@"" Objective-C (как постоянный NSStringобъект)
[NSString string] Objective-C (как новый NSStringобъект)
q(), qq() Perl
str() Python
%{}
%()
Рубин
string.Empty C # , Visual Basic .NET
String.make 0 '-' OCaml
{} Tcl
[[]] Lua

Примеры пустых строк

Пустая строка - это синтаксически допустимое представление нуля в позиционной записи (с любой базой), которое не содержит ведущих нулей . Поскольку пустая строка не имеет стандартного визуального представления за пределами теории формального языка, число ноль традиционно представляется одной десятичной цифрой 0 .

Заполненная нулями область памяти, интерпретируемая как строка с завершающим нулем , является пустой строкой.

Пустые строки текста показывают пустую строку. Это может происходить из двух последовательных EOL , как это часто бывает в текстовых файлах , и это иногда используется при обработке текста для разделения абзацев , например, в MediaWiki .

Смотрите также

использованная литература