Что такое функция strsplit в R, соответствует и удаляет заданное регулярное выражение, чтобы разделить остальную часть строки на векторы.Как расколоть и сохранить элементы с помощью strsplit?
>strsplit("abc123def", "[0-9]+")
[[1]]
[1] "abc" "" "" "def"
Но как я должен разделять строку таким же образом, используя регулярное выражение, но также сохраняя совпадения? Мне нужно что-то вроде следующего.
>FUNCTION("abc123def", "[0-9]+")
[[1]]
[1] "abc" "123" "def"
Использование strapply («abc123def», «[0-9] + | [AZ] +») работает здесь, но что, если остальная часть строки, кроме матчей не могут быть захвачены регулярным выражением ?
Вы можете захватить все символы, используя шаблон «[0-9] + | [^ 0-9] +» или расширить шаблон, чтобы захватить все остальное и отбросить его от выхода с помощью функции FUN = функция (х), если (grepl ("^ [0-9a-z] + $", x)) x –
Привет, я вижу, что вы новичок в SO. Если вы чувствуете, что ответ решил проблему, отметьте ее как «принятую», нажав зеленую галочку. Это помогает сосредоточиться на более старых SO, которые до сих пор не имеют ответов. http://meta.stackexchange.com/questions/88535/asking-for-someone-to-accept-your-answer/135824#135824 –