Effacer les filtres
Effacer les filtres

Limit length of a string

41 vues (au cours des 30 derniers jours)
Christian Günther
Christian Günther le 16 Jan 2023
Hello,
How can I limit the lengt of strings that I print out ?
text1 contains a sting of length 7 to 25, but I want to print a maximum of 18 charactes.
I have tried the following, but it does not work for text1:
text1='012345678901234567890123456789';
text2='01234567';
sprintf('%-18s',text1)
ans = '012345678901234567890123456789'
sprintf('%-18s',text2)
ans = '01234567 '
In the end it should look like a table.
Best regards
Christian

Réponse acceptée

Christian Günther
Christian Günther le 16 Jan 2023
Hello,
I've found the solution myself:
with this command it gests truncated to 18 characters:
sprintf('%+18.18s',text1)

Plus de réponses (2)

Matt J
Matt J le 16 Jan 2023
text1='012345678901234567890123456789';
text2='01234567';
text1(19:end)=''
text1 = '012345678901234567'
text2(19:end)=''
text2 = '01234567'
  2 commentaires
Christian Günther
Christian Günther le 16 Jan 2023
Hello,
Thanks for the reply.
It is working, but I need to overwrite each string before using it.
Thanks !!
Matt J
Matt J le 16 Jan 2023
Modifié(e) : Matt J le 16 Jan 2023
Wrap the steps in some function,
text1='012345678901234567890123456789';
text2='01234567';
trunctext(text1)
012345678901234567
trunctext(text2)
01234567
function trunctext(T)
T(19:end)='';
disp(T)
end

Connectez-vous pour commenter.


Walter Roberson
Walter Roberson le 16 Jan 2023
https://www.mathworks.com/help/matlab/ref/extractbefore.html
This can be used in an expression without modifying the variable. Also it can be used with string() objects as well
  1 commentaire
Christian Günther
Christian Günther le 16 Jan 2023
this is failing for text2:
text2='01234567';
sprintf('%+18s',extractBefore(text2,18))
% Error using extractBefore (line 51)
% Numeric value exceeds the number of characters in element 1.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by