How to check if a string is a valid identifier or not in C++?
In this tutorial, we will learn how we can check if a string is a valid identifier or not in C++ programming. We are going to see it with an example code snippet. So stay here and keep reading this article…
Now to check whether a string is a valid identifier or not in C++. First, let us understand what is a valid identifier in C++.
A string can be a valid identifier if it’s initial(first) letter is either an underscore(_) or lowercase alphabet(‘a’-‘z’) or uppercase alphabet(‘A’-‘Z’). Followed by after initial letter, all the next letters can be a combination of either digit(‘0’-‘9’), lowercase alphabets(‘a’-‘z’), uppercase alphabets(‘A’-‘Z’) or underscore(_).
Above all, the letters followed by an initial letter should not have any spaces( ) and the special symbols($,&,@.^, etc).
Now let us understand it more clearly with a program.
//illustrating how to check whether //a string is valid identifier or not. #include <bits/stdc++.h> using namespace std; int main() { string s; int c=0,flagv; cout<<"enter any string: "; cin>>s; //input any string //check whether it is a valid identifier or not if( (s[0]>='a'&&s[0]<='z') || (s[0]>='A'&&s[0]<='Z') || (s[0]=='_') ) { for(int i=1;i<s.length();i++) { if((s[i]>='a'&& s[i]<='z') || (s[i]>='A' && s[i]<='Z') || (s[i]>='0'&& s[i]<='9') || (s[i]=='_') ) { c++; } } if(c==s.length()) { flagv=0; } } else { flagv=1; } //if flagv=1 then string is not a valid identifier if(flagv==1) cout<<s<<"is not valid identifier"; //otherwise string is a valid identifier else cout<<s<<" is valid identifier"; return 0; }
Read the comments in the program above for better understanding.
The above code displays the following output i.e., either string is a valid identifier or not a valid identifier.
Some of the valid identifiers are,
1. enter any string: abc_ abc_ is valid identifier. 2. enter any string: Amc876_d Amc876_d is valid identifier. 3. enter any string: _hi777 _hi777 is valid identifier.
Some of the string which is not valid identifiers are as shown below,
1. enter any string: %defA_c %defA_c is not valid identifier. 2. enter any string: %@^9_8 %@^9_8 is not valid identifier.
Recommended articles:
Random Alphanumeric String Generation in C++
Python program to check if a string is a valid identifier or not
there is error .if i give space any letter it show valid but it’s false and so many error!