Filter löschen
Filter löschen

Find string in txt and delete searched string line

4 Ansichten (letzte 30 Tage)
Bloodyrhyme
Bloodyrhyme am 26 Apr. 2019
Kommentiert: Bob Thompson am 26 Apr. 2019
I have a text file.
Example
Bloody, 123456, Rhyme
Fine,6542445,Fate
Faith,9875415,Empty
Faith,45152123,New
I want to search for 'Faith' and i want to delete all Faith lines or i want to search for 'empty' and i want to delete all empty lines.
this is good but its delete all info until searched string, not searched string line.

Akzeptierte Antwort

Bob Thompson
Bob Thompson am 26 Apr. 2019
You can use Jan's method from the linked question to find your lines. Then once you have found them turn them into blank lines (I'm assuming that's also what you mean by 'emtpy'). Once you have found all of the lines, using logic indexing to remove all blanks.
Index = find(strcmp(CStr, SearchedString), 1); % Find lines with 'Faith'
CStr(Index) = []; % Blank found lines
CStr = ~isempty(CStr); % Remove any empty lines, may need ~isempty([CStr(:)]);
  2 Kommentare
Bloodyrhyme
Bloodyrhyme am 26 Apr. 2019
Bearbeitet: Bloodyrhyme am 26 Apr. 2019
Empty is a only word for example. Not situation for txt. i want to find 'empty' as word and i want to delete that line. my mistakes. i tell wrong i guess.
Bob Thompson
Bob Thompson am 26 Apr. 2019
That's fine. The 'simplest' way to look for multiple words is to run the search multiple times, once for each word, and blank out the respective lines.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by