Cut the first three fields (separated by "|") from the output of a command that trims whitespace to a single space and replaces any numbers in the format "###.###.####" with "###-###-####" from the file "input.txt".
cut -f 1-3 -d "|" <(tr -s '[:blank:]' ' ' <(sed "s/\([0-9]\{3\}\).\([0-9]\{3\}\).\([0-9]\{4\}\)/\1\-\2\-\3/g" input.txt))