Assuming you want to send the current line, you can do it this way:
yy " Yank the current line
:new " Split open a new buffer/window
Vp " Paste, replacing the empty line
:%!<command> " Process buffer with your command
I don't know if there is a shorter way.
Let's combine this, and Matt Boehm's suggestion, into a mapping for you:
nnoremap <Leader><Bar> "zyy:new<CR>:set buftype=nofile bufhidden=wipeout noswapfile<CR>V"zp:redraw<CR>:%!
Put that in your ~/.vimrc and now you can just hit \| when you want to use it.
I took the liberty of changing Matt's
bufhidden=wipeout which will will make the scratch buffer very temporary. Now it will automatically destroy itself if you close the newly split window (for example with Ctrl-W C). But beware: it will also discard any unsaved changes. Choose whichever behaviour you prefer.
We use the 'z' register in this mapping to avoid clobbering the default yank register, which might have something useful in it.
:redraw helps to show what is going on but is entirely optional. Without it, you won't see the split window until you have executed (or cancelled) the external command.