
[code]

    %  
    % ●説明  
    %    文字列の先頭の部分のカッコを消したい 
    %  
    %  ●対象データ  
    %    (hoge)あいうえお  
    %  ●希望する結果  
    %    hogeあいうえお  
    % 
    
    
    
    文字列の先頭の部分のカッコを消したい(_文字列,_置換した文字列) :-  
    atom_chars(_文字列,_文字ならび),  
    文字ならびの先頭の部分のカッコを消す(_文字ならび,_置換した文字ならび),  
    atom_chars(_置換した文字列,_置換した文字ならび).  
    
    文字ならびの先頭の部分のカッコを消す(_文字ならび,_置換した文字ならび) :-  
    先頭部分のカッコ内の文字ならびと残り文字ならびを得る(_文字ならび,_カッコ内の文字ならび,_残り文字ならび),  
    カッコ内の文字ならびと残り文字ならびを結合する(_カッコ内の文字ならび,_残り文字ならび,_置換した文字ならび).  
    
    先頭部分のカッコ内の文字ならびと残り文字ならびを得る(_文字ならび,_カッコ内の文字ならび,_残り文字ならび) :-  
    append(['('|_カッコ内の文字ならび],[')'|_残り文字ならび],_文字ならび),  
    カッコ内の文字ならびはカッコを含まない(_カッコ内の文字ならび),!.  
    
    カッコ内の文字ならびはカッコを含まない(_カッコ内の文字ならび) :-  
    \+(member('(',_カッコ内の文字ならび)),  
    \+(member(')',_カッコ内の文字ならび)).  
    
    カッコ内の文字ならびと残り文字ならびを結合する(_カッコ内の文字ならび,_残り文字ならび,_置換した文字ならび) :-  
    append(_カッコ内の文字ならび,_残り文字ならび,_置換した文字ならび).  
    
[/code]


CC BY-SA 3.0
2014-12-19T04:27:13.757
2092
2014-12-21T01:33:00.930
2014-12-21T01:33:00.930
4632
5175
question
prolog
以下のProlog述語の中で一箇所カットが使われていますが、別の場所で同じ効果をあげることができますか？