This thing really confuses me, pardon my ignorance.
I have a var $name in here that I want to be free from number, I don’t want any digit to be included in it. My preg_match() is this:
var_dump(preg_match('/[^\d]/',$name));
Test cases:
$name = "213131"; // int(0)
$name = "asdda"; // int(1)
$name = "as232dda"; // int(1)
What I want is to have the third case to be int(0) too.
I’m really a hard time understanding this preg_match(), docs say it return 1 if a pattern match a subject. Here in my case, I use a negated class.
#3 matches because you have both letters and numbers. Your regex in English basically says
If you want to match only non-digit characters, you have to have the regex match against the entire string and allow for an arbitrary number of characters: