EXTRACT NUMBER FROM A COMBINED STRING AND NUMBERS

1 vue (au cours des 30 derniers jours)
Diego
Diego le 13 Juin 2014
Commenté : Diego le 13 Juin 2014
I have for example the following string 'mario5.png' or 'Julian15.png' and want to extract the numbers from there in the first case 5 in the second case 15. Can anyone tell me which function to look for?

Réponses (3)

Dishant Arora
Dishant Arora le 13 Juin 2014
String = 'mario5.png';
output = String(regexp(String , '[0-9]'));
  1 commentaire
Diego
Diego le 13 Juin 2014
but what if the nomber is bigger than 10 will this work?

Connectez-vous pour commenter.


David Sanchez
David Sanchez le 13 Juin 2014
use str2double to get it in double format:
output = str2double(String(regexp(String , '[0-9]')))
output =
5
otherwise your output will be a string.

Brian B
Brian B le 13 Juin 2014
Modifié(e) : Brian B le 13 Juin 2014
If the number is bigger than 9, you can make a slight modification to the answer by David Sanchez:
output = str2double(String(regexp(String , '[0-9]+')))
This will work for positive integers. The "+" means "one or more". You can also skip a step by requesting that regexp return the matching part of the string instead of the index of the match:
output = str2double(regexp(String , '[0-9]+', 'match'))
  1 commentaire
Diego
Diego le 13 Juin 2014
Thank you so much to all of you!

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by