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

2 次查看(过去 30 天)
Hello,
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
switch(strtrim(section{1}{1}))
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'})
otherwise
warning('Unknown section: %s', section{1}{1})
end
end
openvar diagramoptions

回答(1 个)

Jan
Jan 2016-12-1
编辑:Jan 2016-12-1
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);
  3 个评论
Jan
Jan 2016-12-1
@Philipp: What does "select directly from diagramoptions variable" exactly mean? Not directly out of the txt file? I don't get it. Please post again, what you want to achieve.
Please do not cross-post a question in different forums. Thanks.
Philipp Mueller
Philipp Mueller 2016-12-1
Ok, I will post it again as a new question. Thank you in advance

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Data Type Identification 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by