php preg_match验证字符串是否为alpha或有空格

时间:2014-03-20 05:40:17

标签: php regex preg-match

我需要验证一个只能包含字母(小写或大写)并且可能有空格(可能没有)和短划线的字符串。

if(preg_match('/^[-a-zA-Z0-9]+$/', $myString)) {
    //valid string
}

2 个答案:

答案 0 :(得分:1)

您可以将此用于仅包含字母,空格和短划线的字符串,但至少包含一个字母。

if(preg_match('/^(?=.*[a-z])[a-z -]+$/i', $myString)) {
  echo 'valid';
}

编辑: 如果输入必须以任何字母开头,那么正则表达式可以简化为:

if(preg_match('/^[a-z][a-z -]*$/i', $myString)) {
  echo 'valid';
}

答案 1 :(得分:0)

您可以使用此正则表达式:

/^[a-zA-Z -]+$/

if(preg_match('/^[a-zA-Z -]+$/', $myString)) {
    //valid string
}

编辑如果输入必须以字母开头,请使用:

/^[a-zA-Z][a-zA-Z -]*$/