【发布时间】:2014-02-01 23:18:08
【问题描述】:
我的目标是通过允许姓氏仅包含字母或单引号来验证姓氏。 我不知道最快的方法是什么..也许是正则表达式我想.. 无论如何,到目前为止我有这个:
function check_surname($surname)
{
$c = str_split($surname,1);
$i = 0;
$test = 1; // Wrong surname
while($i < strlen($surname))
{
if(ctype_alpha($c[$i]) or $c[$i] == '\'')
{
$test = 0;
$i++;
}
else
{
return false;
}
}
}
我能感觉到这里出了点问题,但我看不出它在哪里。 谁能帮帮我?
【问题讨论】:
-
我不推荐this..如果您出于某种原因仍然需要:
return preg_match('/[a-z']/i', $surname); -
“我的目标是通过允许姓氏仅包含字母或单引号来验证姓氏。” en.wikipedia.org/wiki/John_von_Neumann 打破这个...
-
@SamSullivan,这对 John le Carré 有用吗?
-
是的。好文章,@SamSullivan。我以前在自己的博客上链接过它。问题是,如果 OP 确实想将其限制为包含字母的名称,é 是一个字母,它不会被
[a-z]捕获。 -
永远不要忘记变音符号,否则会疏远大量用户
标签: php regex validation