I'm attempting to split strings delimited by ',' except where the ',' is in a substring enclosed by brackets. Modifying other solutions here and examples in the docs I tried this test:
awk -v FPAT='([^,]+)|(\([^\))+\))' '{
for (i=1; i<=NF; i++) {
printf("%s\n", $i)
}
}' <<< 'one two (1one), three four (3three, 4four), five six, seven eight, nine ten eleven (8ten)'
one
two
(1one),
three
four
(3three,
4four),
five
six,
seven
eight,
nine
ten
eleven
(8ten)
The FPAT isn't overriding the default delimiter as I expected. so clearly I'm missing something.
The output I want is:
one two (1one),
three four (3three, 4four),
five six,
seven eight,
nine ten eleven (8ten)