#

# Process a properly formatted CSV file. # You can change the separator from the default , # to any set of characters using the --separator=CSET # argument. #

#

# Each separator denotes a field separation (e.g. "a,,,b," # contains five fields) unless you give the --span argument. # If you give the --span argument, then the fields # as considered to be separated by one or more spans # of the separator instead of exactly one and the above input # contains three fields instead of five (in both cases, the last # field is the empty string). #

#

# Assumes that:

# a. Fields containing the separator are enclosed in double # quotes.
# b. Fields containing double quotes have those quotes # duplicated with the entire field inclosed in double # quotes.
# c. Leading and trailing whitespace (blanks and tabs) are # to be removed unless used as separators.
# d. Double quotes and newlines are never separators.
#