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 character. Currently, I have a string that contains special characters such as std::string = "!@#$%^&". I then use the std::find\_first\_of () algorithm to check if any of the special characters are present in the string.

I was wondering how to do it based on whitelisting. I want to specify the lowercase/uppercase characters, numbers and an underscore in a string ( I don't want to list them. Is there any way I can specify the ascii range of some sort like [a-zA-Z0-9\_]). How can I achieve this? Then I plan to use the std::find\_first\_not\_of(). In this way I can mention what I actually want and check for the opposite.