Ruby Language Differenza tra valori letterali stringa a virgolette singole e virgolette


Esempio

La differenza principale è che i letterali String virgolette doppie supportano le interpolazioni di stringhe e il set completo di sequenze di escape.

Ad esempio, possono includere espressioni Ruby arbitrarie tramite interpolazione:

# Single-quoted strings don't support interpolation
puts 'Now is #{Time.now}'
# Now is #{Time.now}

# Double-quoted strings support interpolation
puts "Now is #{Time.now}"
# Now is 2016-07-21 12:43:04 +0200

Le stringhe con doppia citazione supportano anche l' intera serie di sequenze di escape, tra cui "\n" , "\t" ...

puts 'Hello\nWorld'
# Hello\nWorld

puts "Hello\nWorld"
# Hello
# World

... mentre le stringhe a virgolette singole non supportano sequenze di escape, è utile il set minimo necessario per le stringhe con quotatura singola: virgolette singole letterali e barre rovesciate, rispettivamente '\'' e '\\' .