is user.Name returning the string in the format you showed
why don't you show what the actual emailList looks like minus the "@xxx.com.sa" stuff
because it can't be returning a simple string for user.Name
I suspect that it is returning one of the two incarnations that worked in the sample that follows.
If it does, then you just need to modify the split
>>> a = "somedomain\\xxx\\username1"
>>> b = "somedomain/xxx/username1"
>>> c = "somedomain\xxx\username1"
File "<string>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 10-11: truncated \xXX escape
It can't just be returning a string with a single backslashes in it eitherwise it would throw and error at some point.
Notice that 'a' and 'b' are fine... either 'raw' format, double backslashes or a single forward slash will pass the test, not a single backslash
a = ["somedomain\\xxx\\username1", "somedomain\\xxx\\username2", "somedomain\\xxx\\username3"]
>>> emails = [name.split("\\")[-1] for name in a]
>>> emails
['username1', 'username2', 'username3']
or...
>>> a = ["somedomain/xxx/username1", "somedomain/xxx/username2", "somedomain/xxx/username3"]
>>> emails = [name.split("/")[-1] for name in a]
>>> emails
['username1', 'username2', 'username3']