Azzera filtri
Azzera filtri

How can extract specific numbers from a string???

1 visualizzazione (ultimi 30 giorni)
I have the string c={ 4 of 5 stars, 5 of 5 stars, 5 of 5 stars, 3 of 5 stars, 3 of 5 stars, 4 of 5 stars}. How can extract to a matrix the bold numbers ????
thank you!!!

Risposta accettata

Guillaume
Guillaume il 9 Set 2016
You could use a regular expression. Assuming all the numbers you want to extract are integer:
str = 'c={ 4 of 5 stars, 5 of 5 stars, 5 of 5 stars, 3 of 5 stars, 3 of 5 stars, 4 of 5 stars}';
starcount = str2double(regexp(str, '\d+(?= of)', 'match'))
The regular expression matches any sequence of digit immediately followed by ' of'.

Più risposte (1)

Image Analyst
Image Analyst il 9 Set 2016
Have you tried sscanf() or str2double()?
  1 Commento
Thimiod Athan
Thimiod Athan il 9 Set 2016
Modificato: Thimiod Athan il 9 Set 2016
Yes but I want to extract only the bold number not all the numbers. one idea is Value = sscanf(a(1), '%g', 1) Value1 = sscanf(a(14), '%g', 1) Value2 = sscanf(a(27), '%g', 1)....etc

Accedi per commentare.

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by