我正在使用TalenD studio將大約80個日誌文件合併爲1個巨型文件。這些文件只是標準的txt文件。我目前有一份工作可以將所有文件合併(他們使用相同的標題和格式),但我的問題如下。TalenD從一列中提取信息並輸入到另一列
第一列包含用戶登錄ID,如果用戶運行在服務器上,則會在日誌中捕獲它,如果它們本地運行則不是。我需要做的是當登錄ID爲Null/Blank時,從位於第4列的文件路徑中找到登錄名。
路徑設置爲eitehr C:\ Documents and Settings(登錄ID這裏)....或C:\ Users(登錄ID在這裏)....或C:\ DOCUME〜1(登錄ID在這裏)...所以它總是在第二組反斜槓之間。但是,我是TalenD的新手,不確定要在表達式中放入什麼,以便將這些數據提取出來並放入登錄ID字段中。
如果任何人有辦法做到這一點,或可以帶領我在正確的方向,這將是非常有益的!
我真的不知道如何實現這一點。我對TalenD非常陌生,並且遵循你的步驟對我來說並不是很合適。我覺得我缺少一些東西。例如,「tExtractRegexField組件的模式也需要爲每個捕獲組添加額外的列(這也是爲什麼我將交替組設爲一個被動組的原因),並且它會按順序填充這些列。」我不知道我應該在這裏做什麼,我應該編輯和添加列到架構?我不確定你的意思是交替和被動組合。 :/ – mw90
對於每個活動捕獲組(由不以'?:'開頭的圓括號表示),您需要向您的模式添加一列。該列將包含正則表達式中捕獲組的內容。在[正則表達式101](http://www.regex101.com)中使用正則表達式,以便您可以讓您的捕捉組合恰到好處。 – ydaetskcoR