2012-11-15 3 views

답변

1

그냥 ISO 프롤로그에서 ASCII 문자를 분류하려는 경우, 당신은 다양한 방법으로이 작업을 수행 할 수 있습니다

길이 1의 원자로 표시됩니다 문자로. 비교하려면 일반 용어 비교 (@>=)/2, (@>)/2 ...을 사용하십시오. 예를 들면 다음과 같습니다.

digit_char(X) :- atom_length(X,1), X @>= '0', X @=< '9'. 
... 

문자조합 시퀀스 정수을 나타내는 일반 정수입니다 (인상적입니까? 그것의 단지 ASCII 코드). 당신은 둘 사이의 변환해야하는 경우

digit_code(X) :- integer(X), X >= 0'0, X =< 0'9. 
... 

char_code/2있다.

유니 코드의 경우 아직 일반적으로 사용할 수없고 동의하지 않았습니다. SWI에는 char_type/2code_type/2이 있습니다. 조심, 이런 일들은 여전히 ​​ What is the difference between ' and " in Prolog?

를 참조하십시오 ... 문자 코드에 대한 자세한 내용은

진화하고있다