我允许用户通过OHS / mod_plsql上传.csv文件。此文件将作为BLOB文件保存在数据库中,然后我将其转换为CLOB。我想获取此CLOB文件的内容并将其内容保存到表中。我已经有一些工作代码根据行结尾拆分文件,然后用逗号分隔每个结果字符串并插入记录。
我需要的是一种处理CSV中的字符串用双引号括起来并包含逗号的方法。例如:
col1,col2,col3,col4 some,text,more,text this,text,has,"commas, semicolons, and periods"
我的代码将知道如何处理第二行,但不知道第三行。有没有人有一些足够聪明的代码可以将“逗号,分号和句号”视为单个标记?我可能会在一起破解某些东西,但我不太相信我的正则表达能力,而且我认为其他人可能已经写了一些能够做同样愿意分享的东西。
答案 0 :(得分:2)
Alexandria PL / SQL库中有一个很好的CSV解析器 - CSV_UTIL_PKG。
https://code.google.com/p/plsql-utils/
更多信息:
http://ora-00001.blogspot.com.au/2010/04/select-from-spreadsheet-or-how-to-parse.html