Find string in txt and delete searched string line
4 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
Bob Thompson
2019-4-26
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 个评论
Bob Thompson
2019-4-26
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!