Ruby suporta strings literários?
Pergunta
Existe apoio em Ruby para (por falta de uma palavra melhor) strings não escapados (literalmente)?
Como em C#:
@"c:\Program Files\"
... ou em TCL:
{c:\Program Files\}
Solução
Sim, você precisa prefixar sua string com %
e então um único caractere delineando seu tipo.
O que você quer é %q{c:\program files\}
.
O livro da picareta cobre isso bem aqui, A seção é entrada delimitada geral.
Outras dicas
Você pode apenas usar uma única string citada.
>> puts "a\tb"
a b
=> nil
>> puts 'a\tb'
a\tb
=> nil
Além de %Q {String}, você também pode fazer o seguinte:
string =<<SQL
SELECT *
FROM Book
WHERE price > 100.00
ORDER BY title;
SQL
Os delimitadores são cordas arbitrárias, convencionalmente em maiúsculas.
mystring = %q["'\t blahblahblah]
Ou se você quiser interpretar \t
como guia:
mystring = %Q["'\t blahblahblah]
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow