【发布时间】:2012-07-09 14:10:05
【问题描述】:
有没有一种方法可以检查字符串是否存在于字符串数组中 - 无需遍历数组?
例如,给定下面的脚本,如何正确实现它来测试存储在变量 $test 中的值是否存在于 $array 中?
array=('hello' 'world' 'my' 'name' 'is' 'perseus')
#pseudo code
$test='henry'
if [$array[$test]]
then
do something
else
something else
fi
注意
我正在使用 bash 4.1.5
【问题讨论】:
-
我 100% 肯定这里已经存在一个相同的问题。不过还没找到。
-
@CharlesDuffy:这可能是您所指的:stackoverflow.com/questions/3685970/… 但是,我不喜欢该解决方案有两个原因:1. 它涉及遍历数组,2. 自定义函数必须写。我更喜欢使用“内置”bash 函数
-
@HomunculusReticulli 哦。如果你只想要内置函数,答案是“不,你不能那样做”——你应该在你的问题中指定它。
-
...好吧,让我们更清楚一点 - 你不能想出一个非迭代的解决方案不使用关联数组。
标签: bash