How to reverse the order of words in string

39 views (last 30 days)
Hi,
I have below sentence and want pring in reverse order;
Input:
'Hello. I. am. Here.'
Output:
Here. am. I Hello.
I use below code, but both does not work.
>> ss = 'Hello. I. am. Here.'
>> fliplr(ss)
ans =
'.ereH .ma .I .olleH'
>> ss
ss =
'Hello. I. am. Here.'
>> reverse(ss)
ans =
'.ereH .ma .I .olleH'
  1 Comment
Geoff Hayes
Geoff Hayes on 14 Jan 2020
Mekala - you will need to write code that recognizes the words in your sentences and then reverse the order of the words. Using fliplr or reverse will just flip or reverse the characters in your strings/array. Perhaps strtok might be useful.

Sign in to comment.

Accepted Answer

Meg Noah
Meg Noah on 14 Jan 2020
There's undoubetly better solutions, but:
strtrim(strrep(cell2mat([flipud(split('Hello. I. am. Here.'))']),'.','. '))

More Answers (1)

Image Analyst
Image Analyst on 14 Jan 2020
Sounds like homework, so here is a hint towards the solution:
str = 'Hello. I. am. Here.'
words = strsplit(str)
reverseWords = words(end:-1:1)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Products


Release

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!