2015-01-20 54 views
0

我需要以下阵列数据分开,但不能想到一个很好的和快速的方式来做到这一点。分割字符串字段和输出重复其他领域对象

Name        OrderGroup   OrderDate 
PID365583       FY13Q1-D    8/28/2014 12:00:00AM 
PID354731,361935     FY13Q2-D    8/28/2014 12:00:00 AM 
PID354737,361937     FY13Q3-D    11/7/2014 12:00:00 AM 
PID359099,361933,363165   FY13Q4-D    11/13/2014 12:00:00 AM 

有不止一个与它(用逗号隔开)相关联的数字我需要移动到一个单独的线阵列和复制从阵列产品线,它是目前在相同的信息每一个名字。所以PID354731,361935需要分成两行,一个用于PID354731,另一个用于361935;两者都包含相同的订单组FY13Q2-D和订单日期8/28/2014 12:00:00 AM

回答

3

假设文件中的数据:

foreach ($line in (Get-Content $file | select -skip 1)) 
{ 
$Parts = $line.split(' ',3) 
    foreach ($Name in $Parts[0].split(',')) 
    { 
    [PSCustomObject]@{ 
     Name = $Name 
     OrderGroup = $Parts[1] 
     OrderDate = [datetime]$Parts[2] 
     } 
    } 

} 
+0

我想不出一个更优雅的方式来做到这一点。好工作。 – Matt 2015-01-21 01:14:21