You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
2.4 KiB
96 lines
2.4 KiB
%function parseIndexHTML(fname);
|
|
|
|
%This routine reads the index.html file and breaks it up into its
|
|
%constituent pieces ("ParsedInputs\" for susequent analysis
|
|
|
|
addpath('functions\');
|
|
|
|
fname = '..\orig_index.html';
|
|
|
|
%% read file
|
|
all_lines = readAllLines(fname);
|
|
|
|
%% find the start of the nodes definition
|
|
target_str = '<script type="text/x-red" data-container-name="NodeDefinitions">';
|
|
row_inds=find(contains(all_lines,target_str));
|
|
if isempty(row_inds)
|
|
disp(['*** ERROR ***: could not find node definitions. Returning...']);
|
|
return;
|
|
end
|
|
row_inds = row_inds(1);
|
|
header = all_lines(1:row_inds-1);
|
|
all_lines = all_lines(row_inds:end);
|
|
|
|
%save the header
|
|
outfname = 'ParsedInputs\header.txt';
|
|
writeText(outfname,header);
|
|
|
|
|
|
%% extract the transition to the nodes
|
|
row_ind = 3;
|
|
textToWrite = all_lines(1:row_ind-1);
|
|
all_lines = all_lines(row_ind:end);
|
|
|
|
%save the transition
|
|
outfname = 'ParsedInputs\transition_to_nodes.txt';
|
|
writeText(outfname,textToWrite);
|
|
|
|
%% extract the nodes
|
|
target_str = '</script>';
|
|
row_inds=find(contains(all_lines,target_str));
|
|
if isempty(row_inds)
|
|
disp(['*** ERROR ***: could not find end of nodes. Returning...']);
|
|
return;
|
|
end
|
|
|
|
row_inds = row_inds(1);
|
|
row_inds = row_inds-1; %back up one to get to the ']}' text instead
|
|
|
|
textToWrite = all_lines(1:row_inds-1);
|
|
all_lines = all_lines(row_inds:end);
|
|
|
|
%save the transition
|
|
outfname = 'ParsedInputs\nodes.txt';
|
|
writeText(outfname,textToWrite);
|
|
|
|
%% extract the transition to docs
|
|
target_str = '<script type="text/x-red" data-help-name=';
|
|
row_inds=find(contains(all_lines,target_str));
|
|
if isempty(row_inds)
|
|
disp(['*** ERROR ***: could not find start of docs. Returning...']);
|
|
return;
|
|
end
|
|
|
|
row_inds = row_inds(1);
|
|
|
|
textToWrite = all_lines(1:row_inds-1);
|
|
all_lines = all_lines(row_inds:end);
|
|
|
|
%save the transition
|
|
outfname = 'ParsedInputs\transitionToDocs.txt';
|
|
writeText(outfname,textToWrite);
|
|
|
|
%% extract the docs
|
|
target_str = '</body>';
|
|
row_inds=find(contains(all_lines,target_str));
|
|
if isempty(row_inds)
|
|
disp(['*** ERROR ***: could not find end of docs. Returning...']);
|
|
return;
|
|
end
|
|
|
|
row_inds = row_inds(1);
|
|
|
|
textToWrite = all_lines(1:row_inds-1);
|
|
all_lines = all_lines(row_inds:end);
|
|
|
|
%save the transition
|
|
outfname = 'ParsedInputs\node_docs.txt';
|
|
writeText(outfname,textToWrite);
|
|
|
|
%% parse the docs and write the invidiual docs
|
|
all_docs = parseDocsFile(outfname,'ParsedNodeDocs\');
|
|
|
|
%% extract the end of the file
|
|
outfname = 'ParsedInputs\end_of_file.txt';
|
|
writeText(outfname,all_lines);
|
|
|
|
|