PHP正则表达式允许空格,但如果它们在那里或在一个单词之后就会失败

时间:2014-04-02 22:42:42

标签: regex

我不想结束变色龙问题我已经开始了新的问题,我正在尝试使用php正则表达式来匹配以下内容......

  • 仅允许使用字母数字字符
  • 至少有2个字符
  • 不仅包含数字

到目前为止我有这个正则表达式http://regex101.com/r/lL3uT4 ....

^(?![0-9]+$)[a-zA-Z0-9 ]{2,}$

这是有效的,但是当我希望它失败时,以下数据仍然有效...

47 (note the space after 47)
   (two spaces next to each other)

我理解这与空格有关,但我仍然需要以下内容来验证......

47 International
3 apple

我认为我要做的是允许空格,但如果字符串完全由空格组成,或者如果有空格但后来没有字符,则会失败;

1 个答案:

答案 0 :(得分:1)

您可以使用:

^(?! )(?![0-9]+$)[a-zA-Z0-9 ]+[a-zA-Z0-9]$
Online Demo