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.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 4 Jul. 2020

0 Stimmen

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

1 Kommentar

klb
klb am 4 Jul. 2020
Bearbeitet: klb am 4 Jul. 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?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Tags

Gefragt:

klb
am 4 Jul. 2020

Bearbeitet:

klb
am 4 Jul. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by