このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1268979408/905
#  ●実装しようとしている正規表現 
#  ^[1-9]\d{3}$ 
#   
#  PHPのpreg_matchでいえば 
#  preg_match (/^[1-9]\d{3}$/, $subject) 
#   
#  ●正規表現の使用環境 
#  PHP 5.2 
#  ●検索か置換か? 
#  検索 
#  ●説明 
#  4桁の西で0000のみを除外したい。 
#  西暦1万年(10000)以上は考慮しない 
#   
#  0000 × 
#  1000〜9999 ○ 
#   
#  ●対象データ 
#  説明の項を参照 
#  ●希望する結果 
#  説明の項を参照 
#   
# 
# 

'4桁の西暦で0000のみを除外したい'(_文字列,_前文字列,_検索文字列,_後文字列) :-
        sub_atom(_文字列,_,_,_,_前文字列,_検索文字列,後文字列,L1,[A,B,C,D],L3),
        digit(A),
        digit(B),
        digit(C),
        digit(D),
        \+((A='0',B='0',C='0',D='0')),
        \+((last(L1,Z),digit(Z))),
        \+((L3=[H|_],digit(H))).