Board logo

标题: 如何判断输入的变量是十进制还是字符 [打印本页]

作者: murong     时间: 2007-12-5 00:49    标题: 如何判断输入的变量是十进制还是字符

如何判断输入的变量是十进制还是字符,
@echo off
set /p input=请输入十进制数字:

if 。。。do echo yes
if 。。。do echo no
作者: Climbing     时间: 2007-12-5 08:51
echo %input% | findstr /R /C:"[^0-9 ]" > nul
if %errorlevel%==1 (echo yes) else (echo no)
作者: murong     时间: 2007-12-5 15:17


  Quote:
Originally posted by murong at 2007-12-5 12:49 AM:
如何判断输入的变量是十进制还是字符,
@echo off
set /p input=请输入十进制数字:

if 。。。do echo yes
if 。。。do echo no

首先谢谢您的回复!

能否解释下下面的这句,
findstr /R /C:"[^0-9 ]"

一般表达式是什么意思,还有什么表达式?

/R        将搜索字符串作为一般表达式使用。
/C:       使用指定字符串作为文字搜索字符串。
^        行位置: 行的开始
$        行位置: 行的终点
[class]  字符类别: 任何在字符集中的字符
[^class] 补字符类别: 任何不在字符集中的字符
[x-y]    范围: 在指定范围内的任何字符
作者: Climbing     时间: 2007-12-6 10:18
一般表达式就是正则表达式(Regular expression)。一般Unix系统对正则表达式支持的较好,了解详细信息请google。

[^0-9 ] : 这个表示一个字符集,这个字符集中不包括“0-9和空格”的所有其它字符。




欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) Powered by Discuz! 2.5