making upper case character with respect to the indexes

indxC = [1,7];
s ='hello world';
i want s to be 'Hello World' with using the indxC. The indexes of c should be upper case in the string s. Can you help me thanks

 Akzeptierte Antwort

Image Analyst
Image Analyst am 25 Mai 2020
Bearbeitet: Image Analyst am 25 Mai 2020
Try this:
indxC = [1,7];
s ='hello world';
s(indxC) = upper(s(indxC))
or more generally:
s ='hello world';
upperS = upper(s); % Create an ALL CAPITALS VERSION of s.
spaceLocations = find(s(1:end-1) == ' '); % Find spaces - we'll capitalize the location after a space.
spaceLocations = [0, spaceLocations] % Always capitalize the first letter, so prepend 0.
s(spaceLocations + 1) = upperS(spaceLocations + 1) % Replace these locations with upper case letters.

2 Kommentare

When i use the first one, s(indxC) is printed like HW, So just the indexes are printed not ‘Hello World’
After copying and pasting, this is what I get:
s =
'Hello World'
So I don't know what you mean when you say that just the indexes are printed, and not 'Hello World'. Please post a screenshot.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by