A: как использовать strsplit() с несколькими разделителями
Вы можете использовать следующий базовый синтаксис с функцией strsplit() в R, чтобы разделить строку на части на основе нескольких разделителей:
strsplit(my_string, ' [,& ]+ ')
В этом конкретном примере строка с именем my_string разбивается всякий раз, когда она встречает один из следующих трех разделителей:
- Запятая ( , )
- Амперсанд ( & )
- Площадь
Обратите внимание, что символы в скобках указывают, какие разделители искать, а знак + указывает, что в строке может быть несколько разделителей (например, в строке может быть несколько пробелов).
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Используйте strsplit() с несколькими разделителями в R.
Предположим, у нас есть следующая строка в R:
#create string
my_string <- 'this is a, string & with seven words'
Если мы используем функцию strsplit() для разделения строки каждый раз, когда встречается пробел, это даст следующий результат:
#split string based on spaces
strsplit(my_string, ' ')
[[1]]
[1] "this" "is" "a," "string" "&" "with" "" ""
[9] “seven” “words”
Функция strsplit() разбивает строку всякий раз, когда встречается пробел, но она не может обрабатывать запятые, амперсанды и несколько пробелов.
Чтобы разделить строку на основе каждого из этих разделителей, мы можем использовать следующий синтаксис:
#split string based on multiple delimiters
strsplit(my_string, ' [,& ]+ ')
[[1]]
[1] "this" "is" "a" "string" "with" "seven" "words"
Эта функция способна разбивать строку на основе трех разных разделителей и корректно возвращает только те слова в строке, которые нас интересуют.
Обратите внимание, что в этом примере мы включили три разделителя в квадратных скобках в функцию strsplit() , но вы можете указать столько разделителей, сколько захотите.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции с помощью dplyr:
Как использовать функцию strsplit() в R для разделения строковых элементов
Как разделить строку и получить первый элемент в R
Как посчитать слова в строке в R