If you were using Pro, you could open the file as a database using the pipe(|) as your delimiter.
I'm not sure if it was introduced in v9 or v10, but in the options, you can select an alternate set of trap characters, freeing the pipe character to use like any other type of trap.
Another option would be to trap the whole line and then use LSplits() and RSplits() to retrieve the data from that long character field. This can get hairy especially if the data itself is pretty long.
In many cases a pipe "|" delimited file will work OK as a Database input, as long as you have Pro.
If the requirement is more complex - as with many SAP reports which make extensive use of | as a spacer - then floating trap won't normally work for the "|" character.
This is because Monarch defaults to using the "|" character in a trap line to indicate a "Numeric Or" trap, which can't be combined in with a floating trap.
The way around this is in Options > Input, select "Alternate" trap characters. Then you can the use usual wildcard trap characters as literal traps, even in floating traps.