How can i read the value (string or number) of a variable?

1 view (last 30 days)
I read my input-data from a .txt-File. Now i want to use some of this variables in my script for formating and calculations.... Maybe the question is strange but anyway.... How can i read the value of the variable number_of_plots or color? Is there an easy way except using a for loop + Delimiter and so on? Thank you
My Code:
diagramoptions = [];
wholecontent = fileread('aaa.txt')
sections = regexp(wholecontent, '\*+([^*]+)\*+([^*]+)', 'tokens')
for section = sections
case 'Diagram Options' %Diagram Options -> siehe meine Gliederung im .txt file
keyvalues = regexp(section{1}{2}, '([^\n\r=]+)=([^\n\r=]+)', 'tokens')%\n -> new line; \r carriage return
diagramoptions = cell2table(vertcat(keyvalues{:}), 'VariableNames', {'Key', 'Value'})
warning('Unknown section: %s', section{1}{1})
openvar diagramoptions

Answers (1)

Jan on 1 Dec 2016
Edited: Jan on 1 Dec 2016
What do you exactly want? Searching for a specific token or importing all tokens before the '='?
Searching for a specific token:
contentS = fileread('aaa.txt');
content = regexp(contentS, '\n', 'split')
pattern = 'number_of_plots';
match = strncmp(content, [pattern, '='], length(pattern) + 1);
Data.(pattern) = sscanf(content{match}, [pattern, '=%g'], 1);
Philipp Mueller
Philipp Mueller on 1 Dec 2016
Ok, I will post it again as a new question. Thank you in advance

Sign in to comment.


No tags entered yet.

Community Treasure Hunt

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

Start Hunting!