質問

ご挨拶、

は、テストまたは私は、ある特定の文字はアルファベットであることを確認するために、プロローグに使用できる述語がありましたか?今、私がやっていることはあります:

unallawed文字の一覧ます:\ n - > 10、スペース - > 32 - > 33、.-> 46、 - > 44、: - !> 58; - > 59% %63->? 、45 - > - 、34->」、39->%

\+member(Ch,[10, 32, 33, 34, 39, 44, 45, 46, 58, 59, 63 ]), %Checking for line return           (\n),     space, punctuations

これらは、私がチェックする必要がある文字のほんの一部です。このような文字(CH 2)として試験しました。私に多くの時間を節約し、上記のすべての方法より防御的なアプローチになります。

ありがとうございます。

役に立ちましたか?

解決

IS_ALPHA / 1

このような等is_lower / 1などの他の述語もあります。

他のヒント

は、SWI-Prologで、これは CHAR_TYPE / 2 など

% X is either a single-character atom or a character code
alphabetical(X) :- char_type(X, alpha).

SWI-Prologはまた、のctypes のライブラリを提供していますこれなど、is_alphaを提供しています。

:- use_module(library(ctypes)).
alphabetical(X) :- is_alpha(X).
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top