Thank you for the answer.
echo -a $regsubex(@a @r b &u i o d @e f ~g ,/(?:((?:^| )[@~&][^ ]+(?=$| ))|(?: |^)[^ ]+(?= |$))/gF,\1) : Return : @a @r &u &u @e @e @e @e ~g ~g
shows the same characters more than once :S
it should have been like this: Return : @a @r &u @e ~g
??