官术网_书友最值得收藏!

What is string interpolation?

So what exactly is string interpolation? Good question. String interpolation is the process of being able to seamlessly integrate dynamic values into a string.

Let's assume we want to slip dynamic words into a string. We can get the input from the console and store that input into variables. From there, we can call the variables inside of a pre-existing string.

For example, let's give a sentence the ability to change based on a user's input:

puts "Name an animal" 
animal = gets.chomp
puts "Name a noun"
noun= gets.chomp
p "The quick brown #{animal} jumped over the lazy #{noun}"

Note the way I insert variables inside the string. They are enclosed in curly brackets and are preceded by a # sign.

If I run this code, this is what my output will look like:

So, this is how you insert values dynamically in your sentences.

If you see sites such as Twitter, it sometimes displays personalized messages such as: Good morning Jordan or Good evening Tiffany. This type of behavior is made possible by inserting a dynamic value in a fixed part of a string, and it leverages string interpolation.

Now, let's use single quotes instead of double quotes, to see what happens:

As you'll see, the string was printed as it is, without inserting the values for animal and noun. This is exactly what happens when you try using single quotes—it prints the entire string as it is without any interpolation. Therefore, it's important to remember the difference.

Another interesting aspect is that anything inside the curly brackets can be a Ruby script. So, technically you can type your entire algorithm inside these curly brackets, and Ruby will run it perfectly for you. However, this is not recommended for practical programming purposes.

For example, I can insert a math equation, and as you'll see it prints the value out:

主站蜘蛛池模板: 永新县| 鸡西市| 黄石市| 雷山县| 宁阳县| 共和县| 葵青区| 大庆市| 肥西县| 敦煌市| 昌乐县| 蒲城县| 四会市| 延吉市| 福贡县| 津南区| 太仆寺旗| 商水县| 赤水市| 家居| 迁西县| 和平区| 新郑市| 宾阳县| 忻城县| 新安县| 文登市| 梧州市| 新泰市| 化隆| 皋兰县| 土默特右旗| 阜宁县| 绩溪县| 洮南市| 塔城市| 文昌市| 库尔勒市| 九龙坡区| 大姚县| 谢通门县|