ajout des fonction __get{h,i,}()
This commit is contained in:
parent
cdfb6d6f92
commit
e8481054f4
|
@ -1 +1 @@
|
||||||
003005000
|
003006000
|
||||||
|
|
19
lib/ulib/awk
19
lib/ulib/awk
|
@ -402,6 +402,25 @@ function do_once(key) {
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function __geth(field, HEADERS, nbfields, i) {
|
||||||
|
nbfields = array_len(HEADERS)
|
||||||
|
if (int(field) == field) {
|
||||||
|
field = int(field)
|
||||||
|
if (field >= 1 && field <= nbfields) return field
|
||||||
|
else return 0
|
||||||
|
}
|
||||||
|
field = tolower(field)
|
||||||
|
for (i = 1; i <= nbfields; i++) {
|
||||||
|
if (field == tolower(HEADERS[i])) {
|
||||||
|
return i
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
function __geti(num, HEADERS) { if (num != 0) return HEADERS[num] }
|
||||||
|
function __get(field, HEADERS) { return __geti(__geth(field, HEADERS), HEADERS) }
|
||||||
|
|
||||||
|
|
||||||
function ogeth(field, nbfields, i) {
|
function ogeth(field, nbfields, i) {
|
||||||
nbfields = array_len(ORIGHEADERS)
|
nbfields = array_len(ORIGHEADERS)
|
||||||
if (int(field) == field) {
|
if (int(field) == field) {
|
||||||
|
|
|
@ -1995,8 +1995,11 @@ function __array_parsecsv(fields, line, nbfields, colsep, qchar, echar, shou
|
||||||
i = i + 1
|
i = i + 1
|
||||||
}
|
}
|
||||||
if (nbfields) {
|
if (nbfields) {
|
||||||
while (array_len(fields) < nbfields) {
|
nbfields = int(nbfields)
|
||||||
fields[array_len(fields) + 1] = ""
|
i = array_len(fields)
|
||||||
|
while (i < nbfields) {
|
||||||
|
i++
|
||||||
|
fields[i] = ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return array_len(fields)
|
return array_len(fields)
|
||||||
|
@ -2068,7 +2071,7 @@ function printcsv(output, fields) {
|
||||||
array_fill(fields)
|
array_fill(fields)
|
||||||
array_printcsv(fields, output)
|
array_printcsv(fields, output)
|
||||||
}
|
}
|
||||||
function array_findcsv(fields, input, field, value, nbfields, orig, found) {
|
function array_findcsv(fields, input, field, value, nbfields, orig, found, i) {
|
||||||
array_new(orig)
|
array_new(orig)
|
||||||
array_fill(orig)
|
array_fill(orig)
|
||||||
array_new(fields)
|
array_new(fields)
|
||||||
|
@ -2085,8 +2088,11 @@ function array_findcsv(fields, input, field, value, nbfields, orig, fou
|
||||||
if (!found) {
|
if (!found) {
|
||||||
delete fields
|
delete fields
|
||||||
if (nbfields) {
|
if (nbfields) {
|
||||||
while (array_len(fields) < nbfields) {
|
nbfields = int(nbfields)
|
||||||
fields[array_len(fields) + 1] = ""
|
i = array_len(fields)
|
||||||
|
while (i < nbfields) {
|
||||||
|
i++
|
||||||
|
fields[i] = ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue