|
Packit Service |
f629e6 |
BEGIN {
|
|
Packit Service |
f629e6 |
FALSE = 0
|
|
Packit Service |
f629e6 |
TRUE = 1
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
fpat[1] = "([^,]*)|(\"[^\"]+\")"
|
|
Packit Service |
f629e6 |
fpat[2] = fpat[1]
|
|
Packit Service |
f629e6 |
fpat[3] = fpat[1]
|
|
Packit Service |
f629e6 |
fpat[4] = "aa+"
|
|
Packit Service |
f629e6 |
fpat[5] = fpat[4]
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
data[1] = "Robbins,,Arnold,"
|
|
Packit Service |
f629e6 |
data[2] = "Smith,,\"1234 A Pretty Place, NE\",Sometown,NY,12345-6789,USA"
|
|
Packit Service |
f629e6 |
data[3] = "Robbins,Arnold,\"1234 A Pretty Place, NE\",Sometown,NY,12345-6789,USA"
|
|
Packit Service |
f629e6 |
data[4] = "bbbaaacccdddaaaaaqqqq"
|
|
Packit Service |
f629e6 |
data[5] = "bbbaaacccdddaaaaaqqqqa" # should get trailing qqqa
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
for (j = 1; j in data; j++) {
|
|
Packit Service |
f629e6 |
printf("Splitting: <%s>\n", data[j])
|
|
Packit Service |
f629e6 |
n = patsplit(data[j], fields, fpat[j], seps)
|
|
Packit Service |
f629e6 |
print "n =", n
|
|
Packit Service |
f629e6 |
for (i = 1; i <= n; i++)
|
|
Packit Service |
f629e6 |
printf("fields[%d] = <%s>\n", i, fields[i])
|
|
Packit Service |
f629e6 |
for (i = 0; i in seps; i++)
|
|
Packit Service |
f629e6 |
printf("seps[%s] = <%s>\n", i, seps[i])
|
|
Packit Service |
f629e6 |
}
|
|
Packit Service |
f629e6 |
}
|