For a semisimple complex Lie algebra $\mathfrak{g}$ and a regular element $X\in  \mathfrak g$ the centralizer of $X$ in $\mathfrak g$ is a Cartan subalgebra (see Knapp, 'Lie Groups beyond an introduction', Thm. 2.9'). I'm wondering whether something similar holds on the group level. More precisely, if $G$ is a real semisimple linear group (I'm mostly interested in $Sp(2n,\mathbb R)$), for which $x\in G$ does it hold that the centralizer of $x$ in $G$ is a Cartan subgroup? 

Each regular element $x\in G$ is contained in some Cartan subgroup $H$ which is abelian (Knapp, Thm. 7.108). Hence, $H\subseteq Z_G(x)$. Can one impose additional conditions on $x$ to force equality? 

In the example $G=SL(2,\mathbb C)/\{\pm 1\}$ on page 427 one sees that the centralizer of the diagonal matrix $x$ with entries $z$ and $z^{-1}$ is a Cartan subgroup iff $z\neq \pm 1$ and $z\neq \pm i$ where $z\neq \pm 1$ is just regularity. In particular, the centralizer is a Cartan subgroup iff $x$ and $x^2$ are regular, and regularity alone is not sufficient.

If $G$ is complex, then $H$ is of finite index in $Z_G(x)$ (Knapp, Cor. 7.106) but I didn't find a condition for equality.