2011-06-02 112 views
3

我有一个程序,它将一些制表符分隔的行加载到MySQL表中。其中一个值包含选项卡,这会导致一些问题。数据是逐列创建的,所以我需要找到一种方法,使用gsub从单个字段中删除制表符。然而,我不想摆脱其他任何东西,比如空间。如何从Ruby中的字符串剥离制表符?

+0

您是否使用Ruby的CSV模块? CSV是一个非常复杂的almosta-spec,所以它应该尽可能地利用库,而不是试图重新发明轮子。 – 2011-06-03 02:49:10

回答

15

这真的很容易\t是制表符。

result = string.gsub /\t/, '' 

,或者就地

string.gsub! /\t/, '' 
+1

您应该在您的示例代码中包含一个赋值,或者表明这是一种非变异方法。 – Phrogz 2011-06-02 15:25:36

1

\t是字符串内制表符的转义字符。所以你可以搜索"\t"并用空格或其他东西替换。