如何检查字符串从字符验证开始



我需要放置验证,该名称不应从空间开始。或_

输入名称后,然后您可以添加。

Valid :
My Name
My.Name
My_Name
In Valid:
 My Name
_My Name
.My Name

我做了一个函数

  function validName($name) {
    $name_first_character = substr($name, 0, 1);
    if ($name_first_character == '.' || $name_first_character == '-') {
      return FALSE;
    }
    return TRUE;
  }

,但仍然没有检查空间。我需要与preg_match

正则表达式可能会更容易。您缺少一些您不想允许的字符。使用in_array编写它也更容易。

if (in_array($name_first_character, array('.', '-', ' ', '_'))) {
    return FALSE;
}

演示:https://3v4l.org/sgm4t

正则可能是:

if (preg_match('/^[-._ ]/', $name)) {
    return FALSE;
}

演示:https://3v4l.org/cu6vi

如果要禁止任何类型的空白,则可以用s替换字符类中的空间。

^是字符串的开始
[]创建一个字符类,并允许其中任何一个字符。如果使用-,并且不在开始或结束时会创建一个范围。例如, 1-9的数字是1到9。

,而不是检查您不想要的东西,如何检查自己想要的东西

 function validName($name) {
  $name_first_character = substr($name, 0, 1);
   if (ctype_alpha($name_first_character)) { 
       return TRUE;
    }else{
       return FALSE;
    }
 }

要检查空格,可以修剪字符串并比较是否仍然具有相同的变量。类似的东西会检查领先/尾随的空格

$temp  = $text
$trimmed = trim($temp);
return $temp == $text

相关内容

  • 没有找到相关文章

最新更新