我想要一个带字符串(不是向量)的函数,并反转该字符串中的单词。
例如,
rev_sentence("hi i'm five")
## [1] "five i'm hi"
我有一个可以反转单个字符的函数,但不能反转一个基本上是句子的字符串。
答案 0 :(得分:10)
在R
中,我们可以使用strsplit
在一个或多个空格处拆分,然后将元素反转并将paste
放在一起
sapply(strsplit(str1, "\\s+"), function(x) paste(rev(x), collapse=" "))
#[1] "five i'm hi"
如果只有一个字符串,那么
paste(rev(strsplit(str1, "\\s+")[[1]]), collapse= " ")
#[1] "five i'm hi"
在Python
中,选项可以在转换后split
和join
[::-1]
" ".join("hi i'm five".split()[::-1])
#"five i'm hi"
或使用reversed
" ".join(reversed("hi i'm five".split()))
#"five i'm hi"
str1 <- "hi i'm five"