在bash shell中,我们如何判断一个变量是字符串还是数字?这里的数字可以是整数或浮点数。这个链接"如何判断一个变量的类型是字符串还是整数"似乎只适用于整数。
在bash shell中,我们如何判断一个变量是字符串还是数字?这里的数字可以是整数或浮点数。这个链接"如何判断一个变量的类型是字符串还是整数"似乎只适用于整数。
根据提到的问题,下面的内容适用于我:
[[ $value =~ ^[0-9]+(\.[0-9]+)?$ ]]
[[ $value =~ ^[0-9]+(\.[0-9]+)?$ ]]
可以识别2或2.4作为数字,但将2.或.4识别为字符串。
[[ $value =~ ^(\.[0-9]+|[0-9]+(\.[0-9]*)?)$ ]]
可以识别所有的2、2.4、2.和.4作为数字。