Например, у меня есть строкаРазделить строку на две части после первого слова?
x <- 'what are you talking about'
Как разбить его на две строки 'what'
и 'are you talking about'
?
Например, у меня есть строкаРазделить строку на две части после первого слова?
x <- 'what are you talking about'
Как разбить его на две строки 'what'
и 'are you talking about'
?
Выполняйте сопоставление вместо разделения.
> x <- 'what are you talking about'
> library(stringi)
> stri_extract_all(x, regex="^\\S+|\\S.*")[[1]]
[1] "what"
[2] "are you talking about"
ИЛИ
> library(stringr)
> str_split(x, perl("^\\S+\\K\\s+"))
[[1]]
[1] "what"
[2] "are you talking about"
Nice. Что изменилось бы в коде, чтобы разделить строку после второго слова? – lawyeR
@lawyeR такой простой 'str_split (x, perl ("^\\ S + \\ s + \\ S + \\ K \\ s + "))' –
Вы можете сделать это длинная рука, так как strsplit
не будет играть хорошо здесь:
val <- regexpr("\\s",x)
substring(x, c(1,val+1), c(val-1,nchar(x)))
#[1] "what" "are you talking about"
что-то ненормальное, как 'strsplit (суб (»», '$', x), '[$]') [[1]] ' – rawr
Релевантно к этому обсуждению: [разделение на первое/n-е вхождение разделителя] (http://stackoverflow.com/questions/26301424/split- на первом-го вхождения-о f-разделитель) – thelatemail