【发布时间】:2011-04-02 17:29:24
【问题描述】:
我有一个相对较大的 csv/文本数据文件 (33mb),我需要对其进行全局搜索并替换其上的分隔符。 (原因是似乎没有办法让 SQLServer 在表导出期间转义/处理数据中的双引号,但这是另一回事......)
我成功地在一个较小的文件上完成了 Textmate 搜索和替换,但它在这个较大的文件上卡住了。
似乎命令行 grep 可能是答案,但我不能完全掌握语法,唉:
grep -rl OLDSTRING . | xargs perl -pi~ -e ‘s/OLDSTRING/NEWSTRING/’
所以在我的例子中,我正在搜索 '^'(插入符号)字符并替换为 '"'(双引号)。
grep -rl " grep_test.txt | xargs perl -pi~ -e 's/"/^'
这不起作用,我假设它与转义双引号或其他东西有关,但我很迷茫。帮助任何人?
(我想如果有人知道如何让 SQLServer2005 在导出到 csv 期间处理文本列中的双引号,那真的可以解决核心问题。)
【问题讨论】:
标签: regex sql-server-2005 perl csv grep