このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1307166756/885
#  [1] 授業単元:プログラミング 
#  [2] 問題文(含コード&リンク): 
#  file1を読み込み、特定の文字列string を含む行を削除し、file2に書き込むファイル、ensyu05.cを作成せよ 
#  erase_string( ”file1”, ”file2”, ”string” ) ; 
#   

'file1を読み込み、特定の文字列string を含む行を削除し、file2に書き込む'(_特定の文字列) :-
        file1を読み込み(Lines),
        open(file2,write,Outstream),
        '特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,Lines),
        close(Outstream).

'特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,[]) :- !.
'特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,[Line|R]) :-
        sub_atom(Line,_,_,_,_特定の文字列),
        '特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,R),!.
'特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,[Line|R]) :-
        \+(sub_atom(Line,_,_,_,_特定の文字列)),
        writef(Outstream,'%t\n',[Line]),
        '特定の文字列string を含む行を削除し、file2に書き込む'(Outstream,_特定の文字列,R),!.

file1を読み込み(Lines) :-
        get_lines(file1,Lines).