AWK 数组
AWK具有关联数组,其中最好的事情之一是 – 索引不需要连续设置的数字;您可以使用字符串或数字作为数组索引。此外,不需要提前声明数组的大小 – 数组可以在运行时扩展/缩小。
它的语法如下 –
语法
在下面的范例中, array_name 是数组的名称, index 是数组的索引, value 是要赋给数组元素的值。
创建数组
为了更深入了解数组,让我们创建并访问数组的元素。
示例
执行此代码后,您将得到以下结果:
输出
在上面的示例中,我们将数组声明为 fruits 其索引是水果的名称,值是水果的颜色。要访问数组元素,我们使用 array_name[index] 格式。
删除数组元素
对于插入,我们使用赋值运算符。类似地,我们可以使用 delete 语句从数组中删除一个元素。delete语句的语法如下所示−
语法
下面的示例删除了元素 orange 。因此,该命令不会显示任何输出。
示例
多维数组
AWK只支持一维数组。但是你可以通过使用一维数组本身轻松模拟多维数组。
例如,下面给出了一个3×3的二维数组 –
在上面的示例中,array[0][0]
存储100,array[0][1]
存储200,依此类推。要在array位置[0][0]
存储100,我们可以使用以下语法 −
语法
尽管我们将0,0作为索引,但这不是两个索引。实际上,它只是一个带有字符串0,0的索引。
下面的示例模拟了一个二维数组 –
示例
执行此代码,您将获得以下结果 –
输出
您还可以对数组执行各种操作,例如对其元素/索引进行排序。为此,您可以使用 assort 和 asorti 函数。