このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1272685619/326
#  文字列を10文字幅にして、足りない部分は先頭に'0'を付けるにはどうすればいいですか? 
#  例えば "deadbeef"を入力すると"00deadbeef"と返還する処理を書きたいです。 
#  String.format("%010s", "deadbeef"); 
#  とやってもダメでした 
# 
# 

'文字列を10文字幅にして、足りない部分は先頭に''0''を付ける'(_文字列,_先頭に0を付加した文字列) :-
      sub_atom(_文字列,_,Len,_,_文字列),
      _不足数 is 10 - Len,
      length(L,_不足数),
      all(L,'0'),
      concat_atom(L,S),
      concat_atom([S,_文字列],_先頭に0を付加した文字列),!.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

'文字列を10文字幅にして、足りない部分は先頭に''0''を付ける'(_文字列,_先頭に0を付加した文字列) :-
      atom_chars(_文字列,Chars),
      length(L,10),
      append(L0,Chars,L),
      all(L0,'0')
      atom_chars(_先頭に0を付加した文字列,L).