在Powershell(v2,如果它很重要),它可以分割可變長度的字符串的分隔符?我的輸入文件由行組成,其中每個字段由一個或多個製表符分隔,以保留整齊的列。沒有引導標籤。我以爲你可以在分隔符規範使用正則表達式,所以我嘗試:Powershell:在多個字符上分割
get-content $INFILE | foreach-object {
$LINE = $_.split("`t*");
$F1 = $LINE[0]
$F2 = $LINE[1]
$F3 = $LINE[2]
. . .
}
如果只有一個每個字段之間的選項卡,它的工作原理是必需的。如果有兩個或更多,則將每個視爲一個單獨的分隔符,並且$ LINE的某些成員保留爲空。
你確定它不是因爲'*'?大多數正則表達式風格將匹配兩次'\ t'這樣的表達式:一次用'\ t'和另一個用空字符串。用'+'替換它(這就是你想要的行爲)。 (當然,如果有多個'\ t',它將首先匹配所有的字符串,然後是一個空字符串) – Loamhoof 2013-04-23 12:48:02
感謝您的想法,但「t +」的確如此。 – rojomoke 2013-04-23 13:09:50