Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Конкатенация [ править ]

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

Общие варианты [ править ]

Уникальные варианты [ править ]

  • Awk использует пустую строку: два выражения, смежных друг с другом, объединяются. Это называется сопоставлением . Оболочки Unix имеют похожий синтаксис. Rexx использует этот синтаксис для конкатенации, включая промежуточный пробел.
  • C (вместе с Python) допускает сопоставление строковых литералов, однако для строк, хранящихся в виде массивов символов , функция должна использоваться.strcat
  • COBOL использует STRINGоператор для объединения строковых переменных.
  • MATLAB и Octave используют синтаксис " [x y]" для объединения x и y.
  • Visual Basic и Visual Basic .NET также могут использовать +знак « », но с риском двусмысленности, если строка, представляющая число, находится вместе.
  • Microsoft Excel позволяет как " &", так и функцию " =CONCATENATE(X,Y)".
  • В Rust есть concat!макрос и format!макрос, из которых последний является наиболее распространенным в документации и примерах.

Строковые литералы [ править ]

В этом разделе сравниваются стили для объявления строкового литерала .

Цитируется с интерполяцией [ править ]

Выражение «интерполируется» в строку, когда компилятор / интерпретатор оценивает его и вставляет результат на его место.

Экранированные цитаты [ править ]

«Экранированные» кавычки означают, что символ «флаг» используется для предупреждения о том, что в строке используется символ после флага, а не в конце строки.

Двойное цитирование [ править ]

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

Цитируется в необработанном виде [ править ]

"Необработанный" означает, что компилятор обрабатывает каждый символ внутри литерала точно так, как он написан, без обработки каких-либо экранирований или интерполяций.

Многострочная строка [ править ]

Многие языки имеют синтаксис, специально предназначенный для многострочных строк. В некоторых из этих языков этот синтаксис является здесь документом или «heredoc»: токен, представляющий строку, помещается в середину строки кода, но код продолжается после начального токена, и содержимое строки не отображается до тех пор, пока следующая строка. В других языках содержимое строки начинается сразу после начального токена, а код продолжается после терминатора строкового литерала.

Уникальные варианты цитирования [ править ]

Заметки [ править ]

1. ^ по- String.raw`` прежнему обрабатывает строковую интерполяцию.

Ссылки [ править ]

1. ^ https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/raw