require"re" record = re.compile[[ record <- ( (',' )* ) -> {} (%nl / !.) field <- / nonescaped <- { [^,"%nl]* } escaped <- '"' {~ ([^"] / '""' -> '"')* ~} '"' ]] print(unpack(record:match"hello,how,are,you,today"))