Copy files searched with find command using xargs command
xargs appends its input to the command, so you are basically running cp . source_file. Use

find ~ -type f -iregex '.*linux.*\.pdf' -print0 | xargs -I '{}' -0 cp '{}' .


instead.