Просто летнее любопытство о строках в R. Пусть говорят, что у меня есть строки и y
. Как мы знаем, мы должны приводить одинарные кавычки в двойные кавычки и наоборот.Прочитайте строку с одиночными и удвоенными котировками
x <- "a string with 'single' quotes"
y <- 'another one with "double" quotes'
paste0(x, y)
[1] "a string with 'single' quotesanother one with \"double\" quotes"
cat(x, y)
a string with 'single' quotes another one with "double" quotes
Что делать, если у нас есть строка с одинарными и двойными кавычками? Я попытался это: Обратные кавычки не работают (R вызывает ошибку):
z <- `a string with 'single' quotes and with "double" quotes`
Используйте \"
вместо "
, а затем использовать cat
: Это хорошо работает, но проблема заключается в том, что пользователи должны добавить обратную косую черту в каждая двойная кавычка.
z1 <- "a string with 'single' quotes and with \"double\" quotes"
что, если у нас есть огромный текст файл (например, в .txt
, например) с обоих типов кавычек, и мы хотим, чтобы читать в R?
На этом этапе (глупо) решение мне кажется: работа вне R, сделать некоторые манипуляции (например, заменить все "
с \"
), а затем прочитать в R. Является ли это решение или существует лучший способ внутри R?
Вот только немного .txt
файл, например: Link, в любом случае для тех, кто заинтересован, этот файл просто .txt
с одной линии с таким текстом:
строка с «одиночными» кавычки и \ "double \" котировки
'readLines' будет работать аналогично ответам Tim. или вы можете использовать perl и look-arounds, если вам особенно сложно – rawr
Возможно, лучшим ответом является просто вымыть данные перед импортом в R и удалить кавычки. –
Извините, парни за задержку в добавлении текстового файла, у меня были проблемы с Dropbox. Теперь файл должен быть доступен. – SabDeM