我已經採取了一些從CSV使用豬腳本列的列替換任何種類的換行符:豬腳本從
Cleaned = FOREACH data generate $0 .. $8,$11 .. $27, $31 .. $41, $45 .. $97, $99 .. $111;
在,我不停的專欄中,我想請個假任何可能會破壞蜂巢中數據的新行字符。是它\n
或\r
或\r\n
或<br>
。由於它是用戶輸入的數據,我相信使用回車鍵輸入數據時創建的換行符將成爲上述字符之一,如果您也可以指定它轉換的內容,但是大部分我需要做確保任何類型的換行都從數據中取出,以確保我的數據通過hive CSV解析器正確映射。我如何在我用來過濾列的豬腳本中執行此操作?
編輯:1.我希望繼續使用列範圍,而不必指定每列。 2.指向的示例不處理所有類型的新行字符。
[豬 - 刪除換行,返回和標籤]的可能的複製(http://stackoverflow.com/questions/36212024/pig-remove-line-feed-return-and-tab) –
'乙= REPEED REPLACE(REPLACE(id,'\ n',''),',','')AS id,REPLACE(REPLACE(date,'\ n',''),',','' )AS date,REPLACE(REPLACE(text,'\ n',''),',','')AS text;'這只是一個你可以調整的例子http://stackoverflow.com/questions/31394130/ pig-remove-embedded-newlines-and-commas-in-gzip-files –
@ Hack-R:我在這個例子中使用了cam。我在這裏指定了列範圍。我如何整合列範圍? – gags