我有一个txt文件,我试图导入平面文件到SQL2008,看起来像这样:
“123456”,”some text”
“543210”,”some more text”
“111223”,”other text”
etc…
Run Code Online (Sandbox Code Playgroud)
该文件有超过300.000行,文本很大(通常为200-500个字符),因此手动扫描文件非常耗时且容易出错.其他类似(甚至更复杂的文件)已成功导入.
这一个的问题是,"某些行"在文本中包含引号...(这来自旧版SuperBase DB的导出,它不允许您指定文本量词,除了文件量词之外我无能为力清除它并尝试导入它).
所以"违规"行看起来像这样:
“123456”,”this text “contains” a quote”
“543210”,”And the “above” text is bad”
etc…
Run Code Online (Sandbox Code Playgroud)
你可以在这里看到问题.
现在,如果我可以使用可以使用正则表达式的文本编辑器执行搜索,300.000不是太多,我会手动删除每行的引号.问题不在于违规行数,而是通过简单搜索找不到它们的可能性.我确定它少于500,但是将它们分散在300.000行的txt文件中,你知道我的意思.
基于此,我可以用什么来识别这些线条的最佳正则表达式?
我首先想到的是:告诉我哪行包含多个超过4个引号(").
但我无法想出任何东西(除了基础知识,我不擅长正则表达式).