Solution with gawk:
Code:
#!/usr/bin/awk -f
BEGIN {FS=","; OFS=","}
{
print \
gensub(/^.+([0-9][0-9][0-9][0-9]:[0-9][0-9]:[0-9][0-9]).+$/, "\\1", 1, $2),
gensub(/^.+subject=BMRA.BM.(.+).FPN/, "\\1", 1, $1),
gensub(/^TS=(.+):GMT/, "\\1", 1, $5),
gensub(/^SP=(.+)/, "\\1", 1, $3),
gensub(/^VP=(.+)/, "\\1", 1, $6)
}
If your version of awk doesn't support gensub(), there is a solution with substr() and match(). Let me know.