这有什么问题?
if((preg_match('[a-zA-Z]{1,7}+',$_POST['naam'])) and (preg_match('[^'@'#'<'>'&'*'/]+[a-zA-Z0-9]+!',$_POST['password'])))
第一个正则表达式我想要一个 1-7 长的字符串,只包含字母。
第二个正则表达式我想要一个包含字母和数字的字符串,最后还有一个!
你的正则表达式周围缺少一个分隔符:
if((preg_match('/[a-zA-Z]{1,7}+/',$_POST['naam'])) and (preg_match('/[^'@'#'<'>'&'*'/]+[a-zA-Z0-9]+!/',$_POST['password'])))
{1,7}
- 这意味着 1 到 7
{1,7}+
- 这很尴尬,因为 + 表示前面的字符应该至少一次。 通常用作 [a-z]+
<-- 需要 A-Z
{1,7}+
错了。