sscanf missing first zero
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello I need to pull out the number below from the string
val='020550023 MBB'
and then convert it back to a string (so I want to strip any text)
So this is what I want '020550023'
I've used
s=sscanf(val,'%f')
But it misses the 1st zero.
Any suggestions to also get the first zero if its present?
Thanks
0 commentaires
Réponse acceptée
Jan
le 23 Avr 2021
No, sscanf considers the leading zeros. But numbers are stored in double format in Matlab (and other programming languages as well), which does not consider leading zeros. They are useful for mathematical operations.
If you want to keep the leading zero, you treat the information as a string. Then use corresponding string methods for the manipulation:
val = '020550023 MBB'
s = strtok(s, ' ');
% Or:
index = find(~isstrprop(val, 'digit'), 1) - 1;
s = val(1:index);
Plus de réponses (0)
Voir également
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!