If A, B or C is an expression beginning with a binary or prefix operator like - or \sum, then the previous answers give incorrect spacings. But the following solution will work.
The \phantom command downgrades a relation to an ordinary symbol. We therefore also define a relational phantom command \rphantom that preserves the class of a relation.
\documentclass{article}
\usepackage{amsmath}
\newcommand{\rphantom}[1]{\mathrel{\phantom{#1}}}
\begin{document}
\begin{align}
&\rphantom{=} -A\
&= B\
&= -C-D\
&\phantom{=}\ -E
\end{align}
\end{document}
A binary operator like - following a relation like = or \rphantom{=} is interpreted by LaTeX as an ordinary symbol. That's what we want in the first and the third line of our example.
LaTeX encloses relation symbols in thick spaces \; and binary operator symbols in medium spaces \:. In the fourth line of our example, the \phantom command strips = of its relation status, leaving it short of two thick spaces. On the other hand, LaTeX interprets - as a binary operator, creating a spurious medium space. So we need an extra normal space: \ = \; + \; - \:.
