如何从不同的行位置删除标题,而不是在顶部-MATLAB

如何从不同的行位置删除标题,而不是在顶部-MATLAB,matlab,header,Matlab,Header,我有一个包含多个标题的文本文件。 看起来是这样的: Date,time,*10ms,%%,%%,%%,%%,%%,%%,%%,%%,%%,%%,DETAILS.txt;D;%%;10 11/08/19,13:19:28,03,446,0,545.75,0,6,0,0,0,14,0 11/08/19,13:19:29,05,446,0,549.25,1.9,6,102,1,0,0,0 11/08/19,13:19:30,07,446,0,549.5,1.9,6,102,1,0,0,0 11/08/

我有一个包含多个标题的文本文件。 看起来是这样的:

Date,time,*10ms,%%,%%,%%,%%,%%,%%,%%,%%,%%,%%,DETAILS.txt;D;%%;10 11/08/19,13:19:28,03,446,0,545.75,0,6,0,0,0,14,0 11/08/19,13:19:29,05,446,0,549.25,1.9,6,102,1,0,0,0 11/08/19,13:19:30,07,446,0,549.5,1.9,6,102,1,0,0,0 11/08/19,13:19:31,09,446,0,548.75,1.9,6,102,1,0,0,0 . . . . Date,time,*10ms,%%,%%,%%,%%,%%,%%,%%,%%,%%,%%,DETAILS.txt;D;%%;10 11/08/19,13:19:28,03,446,0,545.75,0,6,0,0,0,14,0 11/08/19,13:19:29,05,446,0,549.25,1.9,6,102,1,0,0,0 11/08/19,13:19:30,07,446,0,549.5,1.9,6,102,1,0,0,0 11/08/19,13:19:31,09,446,0,548.75,1.9,6,102,1,0,0,0 . . 日期、时间,*10ms、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、DETAILS.txt;D、 %%;10 11/08/19,13:19:28,03,446,0,545.75,0,6,0,0,0,14,0 11/08/19,13:19:29,05,446,0,549.25,1.9,6,102,1,0,0,0 11/08/19,13:19:30,07,446,0,549.5,1.9,6,102,1,0,0,0 11/08/19,13:19:31,09,446,0,548.75,1.9,6,102,1,0,0,0 . . . . 日期、时间,*10ms、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、%%、DETAILS.txt;D、 %%;10 11/08/19,13:19:28,03,446,0,545.75,0,6,0,0,0,14,0 11/08/19,13:19:29,05,446,0,549.25,1.9,6,102,1,0,0,0 11/08/19,13:19:30,07,446,0,549.5,1.9,6,102,1,0,0,0 11/08/19,13:19:31,09,446,0,548.75,1.9,6,102,1,0,0,0 . . 等等

我想写一段代码,删除这些头行,并将其余数据存储到一个新文件中

有人能帮忙吗

亲切问候,


Tamara

看起来所有的标题都是一样的,我想你的意思是:日期、时间、*10ms、%、%、%、%、%、%、%、%、%、%、%、%、%、%、%、%和%.txt;D、 %%;十,

如果你想使用MATLAB,你必须打开文件,文本扫描那一行,然后用fgetl删除它


当行始终相同时,不需要正则表达式或类似的东西。

安装cygwin并执行
grep-v'^Date'输入>输出
:-)使用
regexp
。它根据模式执行各种文本操作。
readID = fopen('headers.txt', 'r');
writeID = fopen('no_headers.txt', 'w');
while feof(readID) == 0
    currLine = fgetl(readID);
    if isempty( strfind(currLine, 'Date') )
         fprintf(writeID, '%s\n', currLine);
    end
end
fclose(readID);
fclose(writeID);