You were on the right track with your second attempt, but you forgot to escape characters that have a special meaning in regex patterns.
/\@|#|\$|%|\\|\// # or m{\@|#|\$|%|\\|/}
However, it would be more efficient to use a character class.
/[\@#\$%\\//]/ # or m{[\@#\$%\\/]}
If you're ok with checking for any non-word characters, you can use
/\W/
A safer approach is usually to specify the characters you want to allow, and exclude everything else. For example,
/[^\w]/ # Only allow word characters.
or
/[^a-zA-Z0-9_]/ # Only allow unaccented latin letters, "european" digits, and underscore.