Replace letter with dot

Does anybody know how to replace first letter as well as same subsequent letters of a word with dot in a string?
For instance:
'MOMENT AND INITIALIZATION'
i need: '.O.ENT AND .N.T.AL.ZAT.ON'
To note, I need all white spaces to be saved as they are.

Answers (1)

Try this:
str = 'MOMENT AND INITIALIZATION';
newstr = str;
old = {'M','I'}';
for k = 1:numel(old)
newstr = strrep(newstr, old(k),{'.'});
end
newstr
producing:
newstr =
1×1 cell array
{'.O.ENT AND .N.T.AL.ZAT.ON'}

2 Comments

what if I prompt user to enter words?
First, I would use the inputdlg function for tthat.
Second, the strrep function is case-sensitive, so you would need to account for that. It would likely be easiest to use the upper function to convert the input string to all uppercase, then do the replacements.

Sign in to comment.

Categories

Tags

Asked:

on 4 May 2020

Commented:

on 4 May 2020

Community Treasure Hunt

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

Start Hunting!