Replace string with another value

What would be a good way replace a full string with first 3 letters of last word. For example '13 Jon Walker' with 'WAL' .
I have about 25 such replacements an this is indeed doable line-by-line "by-hand" using replace function, but that beats the purpose of MATLAB. Plus i might have more in future. I looked up regexprep too but it doesnt quite do that. OR have I missed it ? Is there a way I could apply a 'replace full string with first 3 letters of last word ' rule?
Thank you for your time in advance.

 Réponse acceptée

Walter Roberson
Walter Roberson le 4 Juil 2020
S = {'13 Jon Walker', '23 skidoo', '0 infinite way blvd'};
upper(regexprep(S, '^.*\s+(...).*', '$1'))

1 commentaire

klb
klb le 4 Juil 2020
Modifié(e) : klb le 4 Juil 2020
Thank you this works! Could you please explain the meaning of qualifiers though.
Could you also clarify this if possible:
replace(13 Jon Walker,'WAL') returns '13 Jon Walker' not 'WAL' But
replace(13 Jon Walker,'WAL') returns 'WAL' .
Why would that be?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by