2017-03-06 10 views
-1

以下の例では、編集コントロールに数字だけが含まれていることを検証しています。ビジュアルプロローグ:編集コントロール:文字列に数字が含まれているかどうかをチェック

class predicates 
    validateNumber : control::validateResponder. 
clauses 
    validateNumber(Control) = control::contentsOk :- 
     hasDomain(integer, _X), 
     _X = trytoTerm(Control:getText()), 
     !. 
    validateNumber(Control) = control::contentsInvalid(Control, Control, 
      string::format("%s must be an integer!", Control:getLabel())). 

数字が含まれている場合、文字列にはアルファベットのみが含まれ、メッセージユーザーには数字のみが含まれていることを検証する例はありますか?

答えて

0

以下のコードでは、アルファベットのみを許可する検証が追加されています。 Replaceallではスペースを使用できます。議論の答えを提供してくれたGukalovに感謝します。ビジュアルプロローグ。 com

class predicates 
    allowonlyalphabets : control::validateResponder. 
clauses 
    allowonlyalphabets(Control) = 
    if string::hasAlpha(string::replaceAll(Control:getText(), " ", "")) then 
     control::contentsOk 
    else 
     control::contentsInvalid(Control, Control, 
      string::format("%s must not contain numbers!", Control:getLabel())) 
    end if. 
関連する問題