1
有没有办法将其反转,以便首先检查它是否无效?BASH:测试字符串是否有效
if expr "$string" : '-\?[0-9]\+$' >/dev/null
then
echo "String is a valid integer."
else
echo "String is not a valid integer."
fi
有没有办法将其反转,以便首先检查它是否无效?BASH:测试字符串是否有效
if expr "$string" : '-\?[0-9]\+$' >/dev/null
then
echo "String is a valid integer."
else
echo "String is not a valid integer."
fi
是的,我有@nobody和@BenJackson同意,所有你需要的是添加的“逻辑非”运算符,即
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.因为你似乎是一个新用户,如果你得到一个可以帮助你的答案,请记住将它标记为已接受,并且/或者给它一个+(或 - )作为有用的答案。
你试过了吗if! expr ...]'? – Nobody
你不需要'[]'来使用'!'。你可以输入类似'!虚假“的权利,并看到它成功。 –