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

11 visualizzazioni (ultimi 30 giorni)
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 ?

Risposta accettata

madhan ravi
madhan ravi il 22 Giu 2019
Modificato: madhan ravi il 22 Giu 2019
No loops needed:
A = regexp(fileread('fruit.txt'),'\n','split');
whichline = find(contains(A,'apple'))
  6 Commenti
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 ?

Accedi per commentare.

Più risposte (1)

infinity
infinity il 22 Giu 2019
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 Commenti
Jaffrey Hudson Immanuel Jeyakumar
Modificato: madhan ravi il 22 Giu 2019
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

Accedi per commentare.

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by