How to get line number in a text file with a specific word

54 次查看(过去 30 天)
Hallo,
I have a fruit.txt file with data as follows,
apple
mango
Cherry
Watermelon
I want to write a script whcih will find the word 'apple' and return me it line number.
Can anyone help me ?

采纳的回答

madhan ravi
madhan ravi 2019-6-22
编辑:madhan ravi 2019-6-22
No loops needed:
A = regexp(fileread('fruit.txt'),'\n','split');
whichline = find(contains(A,'apple'))
  6 个评论
Jaffrey Hudson Immanuel Jeyakumar
Hallo Madhan,
Thanks for the answer. The script works very fine :)
Regards,
Jaffrey Hudson
Jaffrey Hudson Immanuel Jeyakumar
Hallo ,
I need a small help. I have to trim from the second occurance of the search text 'SOF1_ANTIALIASING on surface AXLERIMI' . How can i update the script ?

请先登录,再进行评论。

更多回答(1 个)

infinity
infinity 2019-6-22
Hello,
you could try this
fileID = fopen('fruit.txt','r');
A = textscan(fileID,'%s');
fclose(fileID);
n = size(A{:});
for i = 1:n
if strcmp(A{:}(i),'apple')
linenumber = i;
end
end
  8 个评论
Jaffrey Hudson Immanuel Jeyakumar
编辑:madhan ravi 2019-6-22
Hallo Trung,
I get the following error.
Error using textscan
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in linenumber4 (line 4)
A = textscan(fileID,'%s','delimiter',sprintf('\f'));
Thank a lot for your support. The script from Madhan works now.
Regards,
Jaffrey Hudson

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Text Data Preparation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by