How to count how many numbers there are in a string?

1 vue (au cours des 30 derniers jours)
steve
steve le 11 Jan 2015
Modifié(e) : steve le 21 Jan 2015
Hi,
Basically I have in a script:
I need Matlab to say '3' in this example.
Any ideas?
  2 commentaires
Guillaume
Guillaume le 11 Jan 2015
What is the definition of 'a number'? Are 123.456, 1e7, 4*i numbers? Or is it just integers?
Stephen23
Stephen23 le 12 Jan 2015
Modifié(e) : Stephen23 le 12 Jan 2015
Here are some different ways of writing numbers: do we need to detect them all?:
  • 3
  • 3.14159
  • +3
  • 1.23E-16
  • 0XF3C
  • 001110101
  • Inf
  • two
  • 4/3
  • 75%

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 11 Jan 2015
This works:
n = length(strsplit(st(~isletter(st))))-1;

Plus de réponses (1)

Azzi Abdelmalek
Azzi Abdelmalek le 11 Jan 2015
str='a b c 45 3 2'
out=numel(regexp(str,'\d+','match'))
  3 commentaires
steve
steve le 20 Jan 2015
thanks for the answer. how can I explain what it means? I've never seen any of those functions and only numel and redexp come up in the help
Ced
Ced le 20 Jan 2015
That's because these are the only two functions there. You can find a list and description of the different input arguments of e.g. regexp in the documentation: Regexp Documentation

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