[英]separate number into digit into prolog
我想使用序言將數字分成列表數字
like :
if number is "345"
separate to [3, 4, 5]
我怎樣才能做到這一點 ?
stringTokenizer("", []) :- !.
stringTokenizer(Sen, [H|T]) :-
frontToken(Sen, Token, Remd), H = Token, stringTokenizer(Remd, T).
我正在使用此謂詞將字符串轉換為字符串列表
由於沒有明確的答案,因此可以使用字符串是ascii整數列表的事實來簡化此過程,如@RayToal所建議的那樣。 只要確保字符串中的所有字符實際上都是整數即可。
stringTokenizer([], []).
stringTokenizer([N|Ns], [Digit|Rest]):-
48 =< N, N =< 57,
Digit is N - 48,
stringTokenizer(Ns, Rest).
你的例子:
?- stringTokenizer("345", List).
List = [3, 4, 5].
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.