How to reference entire substring as a string?

I have an array of strings in a 4x1 cell format, called textarr, as below:
ExA
ExB
ExC
ExD.exe
I would like to remove the .exe, so I initially tried:
textarr(4) = textarr(4)(1:end-4);
But Matlab did not like the double brackets on the right hand side.
I then tried a method using a temporary variable, like:
lasttemp = textarr(4);
lasttemp = lasttemp(1:end-4);
But this just results in lasttemp becoming a 1x0 cell...
I suspect I am confusing the String itself with elements of a string array. How can I address a String inside a specific element of an array?

1 commentaire

Stephen23
Stephen23 le 27 Nov 2019
If those strings represent filenames then using indexing is not a robust solution (because file extensions do NOT all have three characters!). The simple, robust, easy MATLAB solution to remove the file extensions is to use fileparts.

Connectez-vous pour commenter.

 Réponse acceptée

solution:
textarr={'ExA';
'ExB';
'ExC';
'ExD.exe'}
textarr=strrep(textarr,'.exe','')%remove

1 commentaire

Ted Baker
Ted Baker le 27 Nov 2019
Thank you very much for the fast answer, it works perfectly.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by