В Ruby нужно ли экранировать одинарные кавычки в строках с двойными кавычками? - PullRequest
1 голос
/ 24 октября 2011

Скажем, у меня есть следующая строка в двойных кавычках в Ruby:

"Person's name"

Нужно ли экранировать одинарную кавычку?

Ответы [ 3 ]

2 голосов
/ 24 октября 2011

номер

Но разве он не ответил на это?

1 голос
/ 24 октября 2011

Ваш тест и другие ответы уже показали, что нет никакой разницы.

p "Person's name"
p "Person\'s name"

Разница в одинарных кавычках:

Вы получаете синтаксическую ошибку с

p 'Person's name' 

Приведенная версия будет работать:

p 'Person\'s name'

Если это поведение вас раздражало, возможно, вы предпочитаете другую возможность создать строку:

p %{Person's name}
p %q{Person's name} #like '
p %Q{Person's name} #like "
1 голос
/ 24 октября 2011

Обратное тоже верно. Если я знаю, что буду использовать двойные кавычки, я буду использовать одинарные кавычки, чтобы обернуть мою строку. Однако, может быть лучше использовать двойные кавычки всегда, если вы используете другие языки, так как одинарные кавычки обычно просто ссылаться на персонажа. Меня раздражает изменение моего кода на c #, потому что я сказал var x = 'hello world';

...