このディレクトリの索引
http://kohada.2ch.net/test/read.cgi/php/1168450843/821
#  住所と番地の間にある空白を削除する場合どうやればいいですか? 
#  「見附市 見附 123番地」この文字列を 
#  「見附市 見附123番地」としたいです 
#  「見附市」と「見附」の間の空白はそのままという条件付です 
# 

市(見附市).

住所と番地の間にある空白を削除する(_文字列,_住所と番地の間にある空白を削除された文字列) :-
        空白で分割して空白を含む要素ならびを作る(_文字列,_要素ならび),

        前の要素が市名でない番地前の空白を削除されたならび(_要素ならび,_前の要素が市名でない番地前の空白を削除されたならび),
        ならびを結合して住所と番地の間にある空白を削除された文字列を生成(_前の要素が市名でない番地前の空白を削除されたならび,_住所と番地の間にある空白を削除された文字列).

空白で分割して空白を含む要素ならびを作る(_文字列,_要素ならび) :-
        sPLIT(_文字列,[' '],L).

前の要素が市名でない番地前の空白を削除されたならび(_要素ならび,_前の要素が市名でない番地前の空白を削除されたならび) :-
        append(L1,[A|R2],[B|R3],L),
        前の要素が市名でない番地前の空白を(A,B,R2),
        削除されたならび(L1,A,B,R2,_前の要素が市名でない番地前の空白を削除されたならび).

前の要素が市名でない番地前の空白を(A,B,R2) :-
        \+(市名(A)),
        all(R2,' '),
        sub_atom(B,0,1,_,_B0),
        member(B0,['0','1','2','3','4','5','6','7','8','9']),!.

削除されたならび(L1,A,B,R2,_前の要素が市名でない番地前の空白を削除されたならび) :-
        append(L1,[A,B|R3],_前の要素が市名でない番地前の空白を削除されたならび).        

ならびを結合して住所と番地の間にある空白を削除された文字列を生成(_前の要素が市名でない番地前の空白を削除されたならび,_住所と番地の間にある空白を削除された文字列) :-

        atomic_list_concat(_前の要素が市名でない番地前の空白を削除されたならび,_住所と番地の間にある空白を削除された文字列).