【问题标题】:PHP Validation for alpha numeric characters字母数字字符的PHP验证
【发布时间】:2013-06-16 15:15:52
【问题描述】:

我有以下代码用于验证用户输入的字母数字字符

if (!preg_match("/^[A-Za-z][A-Za-z0-9.]*(?:_[A-Za-z0-9]+)*$/", $username)){
echo "invalid username";
}

它检查输入是否包含除 (A-Z) (0-9) 字母数字以外的其他字符。此外,它还允许接受 (_) 下划线,但它应仅作为 my_name 放在字符串之间,但它不会接受 _mynamemyname_

我的问题是如何在上面的代码中添加一个点(。)字符,与下划线中的约束相同,例如接受(my.name)或(myn.ame)等,但不接受(。我的名字)(我的名字。)

【问题讨论】:

  • 您的代码也允许使用点。我刚刚试过了

标签: php regex phpunit


【解决方案1】:

我认为这种模式应该适合你

$string = 'my_nam.e';
$pattern = '/^[a-z]+([a-z0-9._]*)?[a-z0-9]+$/i';
if ( ! preg_match($pattern, $string))
{
    echo 'invalid';
}

【讨论】:

    猜你喜欢
    • 2013-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    • 2012-07-16
    • 1970-01-01
    • 2013-07-03
    相关资源
    最近更新 更多