MATLAB Answers

How to reverse the order of words in string

41 views (last 30 days)
Mekala balaji
Mekala balaji on 14 Jan 2020
Answered: Image Analyst on 14 Jan 2020
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.'))']),'.','. '))

  0 Comments

Sign in to comment.

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)

  0 Comments

Sign in to comment.

Sign in to answer this question.

Tags

Products


Release

R2017a