Кто-нибудь знает о драгоценном камне Ruby (или встроенном, или нативном синтаксисе, если на то пошло), который работает с внешними кавычками строк?
Я ловлю себя на том, что пишу такие методы снова и снова:
remove_outer_quotes_if_quoted( myString, chars ) -> aString
add_outer_quotes_unless_quoted( myString, char ) -> aString
Первый проверяет myString
, чтобы увидеть, совпадают ли его начальный и конечный символы с каким-либо одним символом в chars
. Если это так, он возвращает строку с удаленными кавычками. В противном случае он возвращает его без изменений. chars
по умолчанию представляет собой список символов кавычек.
Второй проверяет myString
, чтобы увидеть, начинается ли он уже и заканчивается ли он char
. Если это так, он возвращает строку без изменений. Если нет, он возвращает строку с добавлением char
до и после, а любое встроенное вхождение char
экранируется обратной косой чертой. char
по умолчанию является первым в списке символов по умолчанию.
(Конечно, у моих придуманных вручную методов нет таких подробных названий.)
Я искал похожие методы в общедоступных репозиториях, но ничего подобного не нашел. Я единственный, кто должен сделать это много? Если нет, то как все остальные это делают?