このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1197620454/672
#  入力制限を掛けたいと思っているのですが 
#   
#    ̄竸字  
#  ◆. (ピリオド) 
#   _ (アンダースコア) 
#  ぁ.丱奪スペース 
#  ァDelete 
#   
#  のみ入力可能にしたいのですがどの様な正規表現をかけばよいでしょうか? 
#   
#  ※◆銑イ竜述が分かりません。 
#  次の正規表現にどの様に修正を加えればよいでしょうか? 
#  Match result = Regex.Match(対象の文字列,"^[a-zA-Z0-9]+$"); 
#   
# 

入力制限を掛けたい(_文) :-
        get_chars(Chars),
        入力適合集合(Chars,_適合文字ならび,_不適合文字ならび),
        concat_atom(適合文字ならび,_文).

入力適合集合([],[],[]) :- !.
入力適合集合([A|R1],[A|R2],R3) :-
        入力適合文字(A),
        入力適合集合(R1,R2,R3),!.
入力適合集合([A|R1],R2,[A|R3]) :-
        入力適合集合(R1,R2,R3).

入力適合文字(A) :- 英数字(A),!.
入力適合文字('.') :- !.
入力適合文字('_') :- !.
入力適合文字('\b') :- !.
入力適合文字(DLE) :- char_code(DLE,127),!.

英数字(A) :-
        A @>= '0',
        A @=< '9',!.
英数字(A) :-
        A @>= 'a',
        A @=< 'z',!.
英数字(A) :-
        A @>= 'A',
        A @=< 'Z',!.