z Perl można sprawdzić, czy tablica zawiera wartośćSprawdź, czy tablica zawiera wartości
$ perl -e '@foo=(444,555,666); print 555 ~~ @foo ? "T" : "F"'
T
Jednak z awk, to podobna komenda sprawdza indeksy tablicy zamiast wartości
$ awk 'BEGIN {split("444 555 666", foo); print 555 in foo ? "T" : "F"}'
F
Jak czy mogę sprawdzić, czy tablica zawiera konkretną wartość w awk?
wierzę jedyną opcją jest do pętli. –
Tak jak mówi Etan, potrzebujesz pętli for. Możesz osiągnąć nieco elastyczny wynik, tworząc nową tablicę (hash) z wartościami jako klucze, np .: 'awk 'BEGIN {split (" 444 555 666 ", foo); dla (i = 1; i <= długość (foo); i ++) bar [foo [i]]; wydrukować 555 w takcie? "T": "F"} "' – Thor
@ Thor - Nie możesz po prostu użyć 'for (i in foo) bar [foo [i]]' zamiast? – n0741337