Найти самое длинное слово с четным количеством символов - PullRequest
0 голосов
/ 09 сентября 2018

Итак, у меня есть строка, и мне нужно найти слово, которое соответствует двум ограничениям, а именно, количество символов в слове должно быть четным, и оно должно быть самым длинным таким словом.

Например:

Input: I am a bad coder with good logical skills
Output: skills

Просто начните с R, чтобы любая помощь была бы отличной.

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Вот мой код:

input<-"I am a bad coder with good logical skills"

words<-strsplit(input," ")                                      # Split it to words

countWords<-sapply(words,nchar)                                 # Count the length of words

dt<-data.frame( word=unlist(words), length=unlist(countWords) ) # Make a dataframe

dt<-dt[order(dt$length),]                                       # Sort the dataframe based on length

dt<-dt[  which((dt$length %% 2)==1),]                           # Get the words with odd length

dt[nrow(dt),]                                                   # Get the longest word
0 голосов
/ 09 сентября 2018

вы можете попробовать библиотеку tokenizers

library(tokenizers)

text <- "I am a bad coder with good logical skills"

names(which.max(sapply(Filter(function(x) nchar(x) %% 2 == 0, 
                          unlist(tokenize_words(text))), nchar)))

#[1] "skills" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...