I/O 개선

반복자로 검색 로직 다듬기

명령줄 검색 예제는 문자열 줄 단위 처리, 에러 전달, 설정 분리를 함께 연습하는 구조입니다.

lines

contents.lines()로 줄 경계를 유지한 채 검색 후보를 만듭니다.

filter

조건에 맞는 줄만 남기면 루프 내부 분기가 사라집니다.

collect

필요하면 Vec<&str>로 모아 테스트 기대값과 비교합니다.

Result

파일 읽기 실패는 호출자에게 넘겨 출력 정책과 분리합니다.