0

ユーザー入力を取得するために、単純なバッチファイル手法を使用しています。

@ECHO OFF
SET /P UserInput=Please Enter Version as X.X.X.X: 

X が数字である XXXX を検証する方法を知っていますか?

例えば:

ユーザー入力は次のようにする必要があります: 1.0.0.23

ありがとう!:)

4

2 に答える 2

1

これはかなり単純なものです。数字やピリオド以外の文字が存在する場合は、ループバックしてもう一度実行します。

@ECHO OFF
:loop
set "UserInput="
SET /P "UserInput=Please Enter Version as X.X.X.X: "
for /f "delims=0987654321." %%a in ("%UserInput%") do echo Try again & goto :loop
于 2013-10-11T12:58:23.817 に答える
1

この回答は、ドット区切りの 4 つの数値フィールドをチェックします。

:Prompt
SET /P "UserInput=Please Enter Version as X.X.X.X: "
FOR /F "TOKENS=1-4 DELIMS=." %%i IN ("%UserInput%") DO (
    SET /A n1=1*%%i
    SET /A n2=1*%%j
    SET /A n3=1*%%k
    SET /A n4=1*%%l
)
IF NOT "%UserInput%" == "%n1%.%n2%.%n3%.%n4%" GOTO :Prompt
ECHO %UserInput%

負の数の検証も追加される場合があります。

于 2013-10-11T13:06:43.593 に答える