このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1323566370/157
#  ●正規表現の使用環境  
#  PHP 5.2 で出来ればpreg_replace()で。 
#   
#  ●検索か置換か?  
#  置換 
#   
#  ●説明  
#  "/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したいです。 
#  fooの文字数は不定です。 
#   
#  ●対象データ  
#  /foo/bar/baz/qux/ 
#  /qwert/asd/fghjk/klzxv/ 
#  /qazwsx/edc/rfvt/gbyhnu/ 
#  /4756/78674/45756/34545/4564/546/ 
#   
#  ●希望する結果  
#  /home/bar/baz/qux/ 
#  /home/asd/fghjk/klzxv/ 
#  /home/edc/rfvt/gbyhnu/ 
#  /home/78674/45756/34545/4564/546/ 
#   
# 

'"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(_文字列,_置換された文字列) :-
        sub_atom(_文字列,_,_,_,S1,_,S3,_,L2,_),
        L2 = [/,f,o,o,/],
        '"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(S1,S3,_置換された文字列),!.
'"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(_文字列,_文字列).

'"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(S1,S3,_置換された文字列) :-
        concat_atom([S1,'/home/',S3],_置換された文字列).
'"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(S1,S3,_置換された文字列) :-
        '"/foo/bar/baz/qux/" を "/home/bar/baz/qux/" に置換したい'(S3,_置換されたS3),
        concat_atom([S1,'/home/',_置換されたS3).