解析特定关键字的每一行的代码编号

时间:2014-01-03 00:14:59

标签: matlab parsing text

我的问题是我想从特定链接读取文本文件,但我发现它很难。

首先,我的文本文件组织如下:

h20198988    book, old book, new book
h20887878    computer, machine, new machine,

我的任务是在整个文本文件中找到一个特定的单词,并将与该单词对应的数字作为输出返回。

我知道我可以使用regexpstrtok来查找字词吗?

1 个答案:

答案 0 :(得分:1)

查看您发布的早期(以及可能相关的)问题,您似乎只是将文件从一个位置复制到另一个位置。你永远不会“知道”它是一个图像文件,你可以让自己的生活变得更加简单。如果你从不转换文件,它会更快,当你把它当作二进制文件时,你可以使用freadfwrite来获取文件I / O:

filepath{k}=fullfile(imgpath,T_MODE,keyword,strcat('img_',num2str(count_save),'.‌​jpg');

fin = fopen(fileSource, 'rb');
temp = fread(fileSource);
fclose(fin);

fout = fopen(filepath{k}, 'wb');
fwrite(fout, temp);
fclose(fout);

这并不能解释您在imwrite遇到问题的原因 - 您没有解释为什么它不适合您。我对你使用fullfile函数所做的奇怪事情感到担心;你确定你写的目录存在吗?您可能想要改为:

filedir = fullfile(imgpath,T_MODE,keyword);

… test for existence of fielder

filename = fullfile(filedir, sprintf("img_%03d.jpg', count_save);

这样做的好处是1)稍微快一点(你只做了一次串联),2)有机会在写入之前测试目录是否存在,以及3)你可以更好地控制目录的格式化名称(使用%03d表示您获得001.jpg002.jpg等 - 这将保持正确的顺序。否则,它们会显示为(例如)1, 10, 11, 12, 2, 3, 4, 5,因为目录列表倾向于是词汇(按字母顺序排列)。)