BASH:测试字符串是否有效

时间:2011-08-08 19:52:00

标签: linux bash scripting

有没有办法将其反转,以便先检查它是否无效?

if expr "$string" : '-\?[0-9]\+$' >/dev/null
then
  echo "String is a valid integer."
else
  echo "String is not a valid integer."
fi

1 个答案:

答案 0 :(得分:6)

是的,我同意@nobody和@BenJackson,你只需要添加'logical NOT'运算符,即

    if ! expr "$string" : '-\?[0-9]\+$' >/dev/null ; then
    #--^  right there ;-)
       echo "String is not a valid integer."
    else
       echo "String is a valid integer."
    fi

我希望这会有所帮助。

P.S。因为您似乎是新用户,如果您得到的答案可以帮助您,请记住将其标记为已接受,并且/或者给它一个+(或 - )作为有用的答案。

相关问题