В чем разница между одинарными и двойными кавычками?


18

В чем разница между одинарными и двойными кавычками?

Есть ли способ получить переменную, раскрытую внутри строки, или их всегда нужно соединять так: 'Hello, ' . s:name . '!'

Ответы:


23

Единственная разница между одинарной и двойными кавычками связана с обратной косой чертой. Для отображения специальных символов, таких как перевод строки, колокольчики, вкладки и т. Д., Вам необходимо использовать двойные кавычки -> "\n".

Внутри строки в одинарных кавычках '\'is is => '\n'является строкой из двух символов (обратная косая черта + n). В двойных кавычках вы должны удвоить его -> "\\", что делает их непрактичными для определения регулярных выражений.

Что касается расширения строки, у вас есть несколько вариантов:

  • 'Hello, ' . s:name . '!'
  • join(['Hello, ', s:name, '!'], '') - которые мы никогда не используем
  • printf('Hello %s!', s:name)
  • lh#fmt#printf('Hello %1!', s:name)- из lh-vim-lib, когда мы не хотим знать о типах и когда нам не нужно форматировать поля, но когда мы хотим использовать такие форматы, как: 'Hello %1. How are you doing %1 this %2'.

Можно ли включить 'строку в одинарные кавычки?
Том Хейл,

2
@TomHale. Да, это так. Удвой это. -> 'foo''bar', или используйте оба вида цитат:'foo'."'".'bar'
Люк Эрмитт
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.