Как я могу извлечь символы до #
в R? Моя строка yet#rt
, и я просто хочу извлечь yet
. substring
хорошо, но материал до #
отличается от длины, поэтому я не могу использовать его здесь.Строки символов в R
ответ
Вы можете использовать strsplit
. Как насчет этого??
strsplit("Good#Bad","#")[[1]][1]
[1] "Good"
Вы можете использовать gsub()
сдирать символ # и все после него
x <- c("apple#pie", "banana#split")
gsub("#.*$","", x)
# [1] "apple" "banana"
привет .. как бы это было, если я хочу расколоться на точку? – Hein
Шаблон gsub принимает регулярное выражение, а точки - это специальные символы в регулярных выражениях, поэтому вам нужно избегать его. Вы можете сделать это с помощью: 'x <- c (" apple.pie "," banana.split "); gsub ("\\ .. * $", "", x) ' – MrFlick
^[^#]*(?=#)
Вы можете попробовать это простое регулярное выражение для достижения этой цели.
Еще одна возможность
library(stringr)
my.string <- "yet#rt"
str_sub(string = my.string, end = str_locate(my.string,"#")[1]-1)
В R, то "#"
, как правило, считается комментарий характер, поэтому некоторые функции, чтобы получить данные в R, как scan
и read.table
, имеют comment.char
аргумент, который говорит R к игнорировать все после того, как этот персонаж встречается.
Вот подход с scan
:
my.strings <- c("yet#rt", "blah#rt", "meh#rt")
scan(what = "character", text = my.strings, comment.char = "#")
# Read 3 items
# [1] "yet" "blah" "meh"
beg2char
(начиная с символа) функции в qdap пакет, который я поддерживаю сделано для такого рода вещи:
library(qdap)
x <- c("apple#pie", "banana#split")
beg2char(x, "#")
## [1] "apple" "banana"
Для другие символы (вы спрашивали о периоде):
x <- c("apple.pie", "banana.split.")
beg2char(x, ".")
## [1] "apple" "banana
- 1. R: Итоговые строки символов
- 2. Сортировка символов в векторе строки в R
- 3. Удаление некоторых символов из строки в R
- 4. Изолировать секцию длинной строки символов в R
- 5. Сопоставляя (буквенно-цифровой) строки символов в R
- 6. Потеря новых символов строки (\ r \ n)
- 7. Кодировка символов в R
- 8. Преобразование символов в R
- 9. Построение символов в R
- 10. R строка символов поиске
- 11. Detect цифры в пределах строки символов определенной формы в R
- 12. Подменю в R на основе общих символов в имени строки
- 13. Aligning как строки в матрице символов в R
- 14. Быстрый способ превратить скопированный текст в строки символов в R?
- 15. сравнение строки в R
- 16. Как подмножество dataframe последними символов строки в R
- 17. Форматирование необычны (имя и фамилия) строки символов в R
- 18. Регулярное выражение строки соответствие любое количество завершающих символов в R
- 19. Как извлечь последние 4 цифры строки символов в R
- 20. Как удалить только «действительные числа» из строки символов в R
- 21. Извлечение и разбиение чисел и символов из строки в R
- 22. Разбиение символьной строки в R на основе символов
- 23. Число символов новой строки
- 24. Функция Изменение символов строки
- 25. Копирование массива символов в R
- 26. Замена нескольких символов в R
- 27. Производный лимит символов в R?
- 28. Поиск дубликатов символов в R
- 29. сортировка символов вектора в R
- 30. конвертировать имена в строки символов
Почему это не работает, если я беру что-то вроде yet.txt и пытаюсь разделить его на еще и текст, а затем получить только еще? – Hein
Второй аргумент функции - указать, какой символ использовать для разделения. Для точки вам нужно добавить escape-символы. Если вы пишете 'strsplit (« yet.txt »,« \\. ») [[1]] [1]' он будет работать – Koundy