Statut d'échappement dans un littéral de chaîne comme argument de `String # tr`
Question
Il y a quelque chose de mystérieux pour moi sur le statut d'échappement d'une barre oblique inverse dans une seule chaîne citée comme argument de String#tr
. Pouvez-vous expliquer le contraste entre les trois exemples ci-dessous? Je ne comprends particulièrement pas le second. Pour éviter les complications, j'utilise 'd'
Ici, qui ne change pas le sens lorsqu'il est échappé en double citation ("\d"
= "d"
).
'\\'.tr('\\', 'x') #=> "x"
'\\'.tr('\\d', 'x') #=> "\\"
'\\'.tr('\\\d', 'x') #=> "x"
Pas de solution correcte
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow