Convert 'str' to 'number'

Hi. I have 'str' like 'P12teta4'i want write a code which take first alphabet (here P), first and second number (here 1 and 2) second word (here teta) and third number (here 4). For example: code we have: ...... .. ..... Result: a=P, b=1, c=2, d=teta, E=4. Tnx

Antworten (1)

Jan
Jan am 6 Jul. 2021
Bearbeitet: Jan am 6 Jul. 2021

0 Stimmen

str = 'P12teta4';
a = str(1);
b = sscanf(str(2), '%d');
c = sscanf(str(3), '%d');
ind = find(isstrprop(str(4:end), 'digit'), 1);
d = str(4:2+ind);
e = sscanf(str(3+ind : end), '%d');
% This crops the trailing number:
List = textscan(str, '%c%1d%1d%[^0123456789]s%d')

1 Kommentar

armin m
armin m am 6 Jul. 2021
If P be a matrix P=[5 78 9] so a(3) should show 9. But it seems a = str(1) > here is just alphabet a=P and after that is not a matrix. I want it then show that matrix.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Functions finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 6 Jul. 2021

Kommentiert:

am 6 Jul. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by