Trouver des membres la racine

Bonjour,

La commande \GetListMember (qui vient d’ici

) est trs pratique pour ranger des donnes et relativement robuste,
voir exemples ci-dessous. Par contre si on lui envoie une
\sqrt{blabla} elle ne fonctionne absolument plus. Quelqu’un a-t-il
dj rencontr ce problme ?

Bonne journe tous,
Lionel

% Debut ECM ----------------------------------------------
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{babel}
\usepackage{xstring} %pour GetListMember
\usepackage{pgffor} %pour la boucle

\newcommand*\GetListMember[2]{\StrBetween[#2,\number\numexpr#2+1]{,#1,},\par}%

\newcommand*{\LesSolutions}{
$y(x) = K\exp{-x^2}$,
$x^2+y^2=K$,
$y = Ae^{3x} + Be^{2x}$,
Sur deux lignes : $\frac{\partial f}{\partial x} =
y/x$\$\frac{\partial f}{\partial y} = ln(x)$,
%$\sqrt{x}$ %<= a ne fonctionne pas.
$racine({x})$
}

\begin{document}

\foreach \n in {1,…,5}{
— \n : {\GetListMember{\LesSolutions}{\n}}\par
}

\end{document}
% Fin de l’ECM ----------------------------------------------

% ===============
% Extrait de Rsultat de compilation :
l.27 }

I suspect you’ve forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.

! Argument of \reserved@a has an extra }.

\par
% ===============