2015-12-08 103 views
0

我有很大的ASCII文件(1.7mil行),我需要插入逗號到特定的列位置。我這樣做是因爲我試圖將文件轉換爲csv,所以我可以將它導入到MySQL。除非有更好的方法(毫無疑問),我想要做的是在我知道字段結束的特定列位置插入逗號。這不是列模式的工作,因爲通過1.7mil行拖動將是瘋狂的。記事本++如何在特定列位置添加逗號?

我曾嘗試這種解決方案 - How do I add a character at a specific postion in a string?

,但沒有奏效。有沒有人有建議?

謝謝!

+0

總共有多少列? – SQLChao

回答

2

要在每行4字後插入:

Find: ^(.{4}) 
Replace: \1, 

(在查找滴答正則表達式 /替換對話框)

+0

謝謝亞歷克斯。使用\ 1,而不是$ 1,做了訣竅。 – RushVan

1

另一種方式來做到這一點是導入txt文件你必須將mysql作爲具有單列的表格。然後分割使用字符串的子串()

SELECT 
    SUBSTRING(col, 1, 8) AS Column1 
    , SUBSTRING(col, 9, 8) AS Column2 
    , SUBSTRING(col, 17, 16) AS Column3 
FROM table 

您可以修改此查詢做SELECT INTOINSERT INTO。取決於你想如何進入決賽桌。

我必須這樣做,因爲這是一個反覆出現的過程,需要自動化。

+0

感謝您的回覆JChao。與亞歷克斯解決方案,但會把你的文件。 – RushVan