Convert 'str' to 'number'

1 view (last 30 days)
armin m
armin m on 6 Jul 2021
Commented: armin m on 6 Jul 2021
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

Answers (1)

Jan
Jan on 6 Jul 2021
Edited: Jan on 6 Jul 2021
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 Comment
armin m
armin m on 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.

Sign in to comment.

Categories

Find more on Numeric Types in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!