Azzera filtri
Azzera filtri

Separate numerical and txt string into two different strings

1 visualizzazione (ultimi 30 giorni)
Hello people
I have a string M_b = '1000 km' and I want to separated to M_b1 = 1000 (a numerical string) and to M_b2 = km (a text string).
To tell the truth only M_b1 is of importance for me. But the data comes from an excel and by using xlsread I can only transfer the data to matlab as txt.
I tried multiple things without any success like: M_b1 = str2num('M_b') [M_1b,M_2b] = strread('M_b', %s) [M_1b,M_2b] = strread (sprintf('M_b'), %s) M_b1 = textscan(M_b,'%s')
I am new to matlab but I can learn fast Thank you for your time

Risposta accettata

Alexandros
Alexandros il 16 Nov 2011
It looks better but it stills give me
??? Error using ==> textscan First input must be of type double or string.
  4 Commenti
Fangjun Jiang
Fangjun Jiang il 16 Nov 2011
I would not use the same variable 'M_b' for the two return arguments. It can be done but it's confusing. Maybe you just have a typo. [M_b, M_b] = xlsread ('1.xls', 2, D14).
Anyway, M_b most likely is a cell array, so you need to do M_b1 = textscan(M_b{1},'%f')

Accedi per commentare.

Più risposte (2)

Fangjun Jiang
Fangjun Jiang il 16 Nov 2011
You are close.
M_b = '1000 km';
M_b1 = textscan(M_b,'%f')

Alexandros
Alexandros il 17 Nov 2011
But now it gets more complecated
I have a string
A = xlsread('1.xls', 1, 'D12') A = 'Audi A4 Avant FTSI Flex Man 1984cc 132kw Euro5A [AI002]'
Now i want
A1 = 'Audi'
A2 = ' A4 Avant FTSI Flex Man'
A3 = '1984' without the cc
A4 = '132' without the kw
A5 = 'Euro5A'
Is this separation doable? and if it is how it can be done? I think is too complex
  1 Commento
Alexandros
Alexandros il 17 Nov 2011
I did
B = strread (A{1}, '%s')
But it gives me
??? Error using ==> dataread
Badly formed format string.
Error in ==> strread at 51
[varargout{1:nlhs}]=dataread('string',varargin{:});
Normaly it should work. Any ideas?

Accedi per commentare.

Categorie

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

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by