I am trying to find if there is better way to check if the string has special characters. In my case, anything other than alphanumeric and a \'_\' is considered a special charac
The first thing that you need to consider is "is this ASCII only"? If you answer is yes, I would encourage you to really consider whether or not you should allow ASCII only. I currently work for a company that is really having some headaches getting into foreign markets because we didn't think to support unicode from the get-go.
That being said, ASCII makes it really easy to check for non alpha numerics. Take a look at the ascii chart.
http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters