Simple data conversion help needed

2 Ansichten (letzte 30 Tage)
Tom
Tom am 18 Feb. 2014
Kommentiert: Tom am 18 Feb. 2014
Hello,
This is probably very simple.
Can anyone tell me where I'm going wrong when using strcmp:
I have this user input:
former = input('Enter the former','s')
To which the response will be something like: Si4+
I then am trying to seek and utilise instances of that user input, Si4+ like such:
if strcmp(atom_type(i),'former')
form(i,:) = x(i,:);
where atom_type is labelled as a cell containing instance of Si4+ and others.
However this doesn't work. It did however work when instead of 'former' in the strcmp part I explicitly write 'Si4+', so clearly there is some data conversion needed.
I thought
former = cellstr(former)
would work, but alas no.
Can anyone help?
Kind regards,
Tom

Akzeptierte Antwort

Image Analyst
Image Analyst am 18 Feb. 2014
Don't put quotes around former in strcmp(). You might also want to use strcmpi instead. Also, to convert a cell to a character string, use char.
former = char(format); % Convert cell to string.
What is the type of atom_type(i)? Is it a cell? If so, you might need to get the contents of the cell instead of the cell itself by using braces: atom_type{i} or just pass it into char: char(atom_type(i)).

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by