あんまりわかっていない者です。Javaでやっております。
かなり複雑な仕様で、ある文字列に次の文字がある場合に、
その文字を接頭語とする単語として区切ってStringの配列で返したいです。
# X \ \+ \- + -

#123\+123 とあれば、#123と\+123の2単語に分けます。
また、文字列に半角スペースがあれば、
そのまま連続する半角スペースを文字列として返します。

もうあと少しなのですが、うまくいきません。

"TOP\+123+123 \-123-123\" という文字列がある場合に、
以下のようになってしまいます。

"TOP"
"\"
"+123"
"+123"
" "
"\-123"
"-123"
"\"