You can read about XPath operators here. The &
operator does not exist.
Also, there is no need to select the element twice.
You could use either
//a[@*[contains(., 'domain')]][@*[contains(., '@')]]
or
//a[@*[contains(., 'domain')] and @*[contains(., '@')]]