82. SUBSEP - 下标分隔符
您可以使用
SUBSEP
变量将默认下标分隔符更改为您喜欢的任何内容。在以下示例中,
SUBSEP
设置为:
。
$ cat array-multi4.awk
BEGIN {
SUBSEP=":";
item["1,1"]=10;
item["1,2"]=20;
item[2,1]=30;
item[2,2]=40;
for (x in item)
print "Index",x,"contains",item[x];
}
$ awk -f array-multi4.awk
Index 1,1 contains 10
Index 1,2 contains 20
Index 2:1 contains 30
Index 2:2 contains 40
在上面的示例中,索引 "1,1"
和 "1,2"
没有使用
SUBSEP
,因为它们用引号引起来。
因此,对于多维 awk 数组,最佳实践是不要将任何索引括在引号内,如下所示。
$ cat array-multi5.awk
BEGIN {
SUBSEP=":";
item[1,1]=10;
item[1,2]=20;
item[2,1]=30;
item[2,2]=40;
for (x in item)
print "Index",x,"contains",item[x];
}
$ awk -f array-multi5.awk
Index 1:1 contains 10
Index 1:2 contains 20
Index 2:1 contains 30
Index 2:2 contains 40