我需要一个正则表达式来查看$ input仅包含字母字符或空格是否还需要一个来检查$ numInput是否只包含数字字符或空格和一个组合所以:
$alphabeticOnly = 'abcd adb';
$numericOnly = '1234 567';
$alphabeticNumeric = 'abcd 3232';
因此,在上述所有示例中,只允许使用字母,数字,空格。
如何获得这3种不同的正则表达式?
答案 0 :(得分:2)
这应该可以帮到你
if (!preg_match('/^[\sa-zA-Z]+$/', $alphabeticOnly){
die('alpha match fail!');
}
if (!preg_match('/^[\s0-9]+$/', $numericOnly){
die('numeric match fail!');
}
if (!preg_match('/^[\sa-zA-Z0-9]+$/', $alphabeticNumeric){
die('alphanumeric match fail!');
}
答案 1 :(得分:2)
这是非常基本的
/^[a-z\s]+$/i - letter and spaces
/^[\d\s]+$/ - number and spaces
/^[a-z\d\s]+$/i - letter, number and spaces
只需在preg_match()
答案 2 :(得分:1)
为了兼容unicode,您应该使用:
/^[\pL\s]+$/ // Letters or spaces
/^[\pN\s]+$/ // Numbers or spaces
/^[\pL\pN\s]+$/ // Letters, numbers or spaces