Ruby:
Интерполяция строки
Как:
В Ruby вы оборачиваете вашу переменную или выражение в #{}
и помещаете туда, где это нужно, в строку в двойных кавычках. Вот так:
name = "Jesse"
greeting = "Привет, #{name}!"
puts greeting # => Привет, Jesse!
Вам не ограничены только переменными; любой код Ruby может находиться там:
price_per_kg = 5
quantity = 2
puts "Ваша итоговая сумма: $#{price_per_kg * quantity}" # => Ваша итоговая сумма: $10
Помните, одинарные кавычки не сработают:
puts 'Привет, #{name}!' # => Привет, \#{name}!
Подробнее
Раньше мы бы соединяли строки и переменные, используя +
или <<
, что быстро превращалось в беспорядок.
email = "user" + "@" + "example.com"
Вот где на сцену выходит интерполяция строк в Ruby, более изысканный способ объединения текста с кодом. Ruby оценивает все, что находится внутри #{}
, и автоматически преобразует это в строку. Подумайте о работе, которая экономится за счет преобразования и соединения строк:
"пи примерно #{Math::PI.round(2)}"
Ruby не уникален; многие языки имеют свою версию этой удобной функции. Но осторожно: в отличие от некоторых языков, Ruby строго резервирует это волшебство для строк в двойных кавычках и определенных других случаев (как обратные кавычки и символы). Одинарные кавычки просто выводят то, что внутри них, вместе с фигурными скобками и всем остальным.
Смотрите Также
- Документация Ruby по синтаксису: Документация Ruby - Синтаксис
- Более глубокое изучение манипуляций со строками: Ruby-Doc.org - Строка