Интерполяция строки

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 строго резервирует это волшебство для строк в двойных кавычках и определенных других случаев (как обратные кавычки и символы). Одинарные кавычки просто выводят то, что внутри них, вместе с фигурными скобками и всем остальным.

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