[COLOR=#0000ff]# -- functions[/color]
[COLOR=#804040][b]function[/b][/color] [COLOR=#008080]remove_line_break[/color]([COLOR=#008080]$input_string[/color]) {
[COLOR=#008080]$output_string[/color] = [COLOR=#2e8b57][b][RegEx][/b][/color]::replace([COLOR=#008080]$input_string[/color],[COLOR=#ff00ff]"\r\n"[/color],[COLOR=#ff00ff]""[/color])
[COLOR=#804040][b]return[/b][/color] [COLOR=#008080]$output_string[/color]
}
[COLOR=#804040][b]function[/b][/color] [COLOR=#008080]create_csv_line[/color]([COLOR=#008080]$input_array[/color]) {
[COLOR=#008080]$output_string[/color] = [COLOR=#2e8b57][b][String][/b][/color]::join( [COLOR=#ff00ff]"|"[/color], [COLOR=#008080]$input_array[/color])
[COLOR=#804040][b]return[/b][/color] [COLOR=#008080]$output_string[/color]
}
[COLOR=#0000ff]# -- main[/color]
[COLOR=#008080]$csv_input[/color] = [COLOR=#ff00ff]"line_breaks.csv"[/color]
[COLOR=#008080]$csv_output[/color] = [COLOR=#ff00ff]"line_breaks_corrected.csv"[/color]
[COLOR=#008080]$csv_header[/color] = [COLOR=#ff00ff]"c1"[/color], [COLOR=#ff00ff]"c2"[/color], [COLOR=#ff00ff]"c3"[/color], [COLOR=#ff00ff]"c4"[/color], [COLOR=#ff00ff]"c5"[/color]
[COLOR=#008080]$csv_lines[/color] = [COLOR=#804040][b]import-csv[/b][/color] -path [COLOR=#008080]$csv_input[/color] -delimiter [COLOR=#ff00ff]"|"[/color] -header [COLOR=#008080]$csv_header[/color]
[COLOR=#008080]$line_num[/color] = [COLOR=#ff00ff]0[/color]
[COLOR=#804040][b]foreach[/b][/color]([COLOR=#008080]$line[/color] [COLOR=#804040][b]in[/b][/color] [COLOR=#008080]$csv_lines[/color]){
[COLOR=#008080]$line_num[/color]++
[COLOR=#0000ff]#echo $line.c1, $line.c2, $line.c3, $line.c4, $line.c5[/color]
[COLOR=#0000ff]# remove line breaks from columns[/color]
[COLOR=#008080]$col1[/color] = remove_line_break([COLOR=#008080]$line[/color].c1)
[COLOR=#008080]$col2[/color] = remove_line_break([COLOR=#008080]$line[/color].c2)
[COLOR=#008080]$col3[/color] = remove_line_break([COLOR=#008080]$line[/color].c3)
[COLOR=#008080]$col4[/color] = remove_line_break([COLOR=#008080]$line[/color].c4)
[COLOR=#008080]$col5[/color] = remove_line_break([COLOR=#008080]$line[/color].c5)
[COLOR=#0000ff]#echo $col1, $col2, $col3, $col4, $col5[/color]
[COLOR=#0000ff]# create corrected cvs line[/color]
[COLOR=#008080]$csv_line_corrected[/color] = create_csv_line([COLOR=#008080]$col1[/color], [COLOR=#008080]$col2[/color], [COLOR=#008080]$col3[/color], [COLOR=#008080]$col4[/color], [COLOR=#008080]$col5[/color])
[COLOR=#0000ff]#echo $csv_line_corrected[/color]
[COLOR=#0000ff]# write to file[/color]
[COLOR=#804040][b]if[/b][/color] ([COLOR=#008080]$line_num[/color] -[COLOR=#804040][b]eq[/b][/color] [COLOR=#ff00ff]1[/color]) {
[COLOR=#0000ff]# replace file[/color]
[COLOR=#008080]$csv_line_corrected[/color] | [COLOR=#804040][b]out-file[/b][/color] [COLOR=#008080]$csv_output[/color] -encoding [COLOR=#804040][b]default[/b][/color]
}
[COLOR=#804040][b]else[/b][/color] {
[COLOR=#0000ff]# append to file[/color]
[COLOR=#008080]$csv_line_corrected[/color] | [COLOR=#804040][b]out-file[/b][/color] [COLOR=#008080]$csv_output[/color] -encoding [COLOR=#804040][b]default[/b][/color] -append
}
}