I got a dataset with a list of keywords (1 keyword / row).
One solution with dplyr + stringr
library(dplyr)
library(stringr)
KEYWORDS <- c('house blue','blue house','my blue house','this house is blue','sky orange','orange sky','the orange sky')
ALPHABETICAL <- KEYWORDS %>% str_split(., ' ') %>% lapply(., 'sort') %>% lapply(., 'paste', collapse=' ') %>% unlist(.)
The last line uses str_split() to split the KEYWORDS into a list of vectors; sort is then applied to each list element; the vectors are concatenated using paste, and finally the list is broken into a vector.
The result is
> cbind(KEYWORDS, ALPHABETICAL)
KEYWORDS ALPHABETICAL
[1,] "house blue" "blue house"
[2,] "blue house" "blue house"
[3,] "my blue house" "blue house my"
[4,] "this house is blue" "blue house is this"
[5,] "sky orange" "orange sky"
[6,] "orange sky" "orange sky"
[7,] "the orange sky" "orange sky the"