我在 awk 中有一个数组(vars),其中包含一组由数字和字母组成的字符串(例如 px0、px2...)。 我想将这些字符串拆分为数字和字母,并将它们放入另一个二维数组(comp)中。
vars[i]={px0,px2,...}-> comp[i,1]={px,px,...},comp[i,2]={0,2,...}
px0 -> px, 0
px2 -> px, 2
py4 -> py, 4
dxy17 -> dxy, 17
我尝试使用 sub 函数,并将结果放入一个新数组中,
for (k=l; k<=length(vars); k++){
j=j+1;vars2[k]=vars[k];
sub(/[a-z]/,"",vars2[k])
comp[j,2]=vars2[k]
printf comp[j,2]
printf " "
sub(/[0-9]/,"",vars[k])
comp[j,1]=vars[k]
print comp[j,1]
}
但是 sub 只从字符串中删除一个字符。
px0 -> px, x0