我在Linux上,为了匹配6位数的和这个范围: 000001到999999,我需要做一个expr运算
我被'[0-9]{5}[1-9]'
卡住了,但是我不能匹配以0结尾的数字,比如000010。我想用'[0-9]{6}|?![0]{6}'
来消除"000000“。
如何使用?!
和/或是否有其他解决方案?
编辑:解决方案= ((?!000000)[0-9]{6})
发布于 2018-06-16 02:16:48
解决方案= ((?!000000)[0-9]{6})
发布于 2018-06-11 04:08:05
使用正则表达式检查一个数字是否在某个范围内并不是最优的。相反,您可以使用以下命令检查输入长度,以及它是否在范围内
a=000001
if ((${#a} == 6 && a > 0 && a <= 999999)); then
echo "foo"
fi
https://stackoverflow.com/questions/50787485
复制相似问题