sed man page:
Normally, sed cyclically copies a line of input, not including its terminating newline character, into a pattern space, (unless there is something left after a “D” function), applies all of the commands with addresses that select that pattern space, copies the pattern space to the standard output, appending a newline, and deletes the pattern space.
It’s operating on the line without the newline present, so the pattern you have there can’t ever match. You need to do something else – like match against
$ (end-of-line) or
Here’s an example of something that worked for me:
$ cat > states California Massachusetts Arizona $ sed -e 's/$/\ > /' states California Massachusetts Arizona