我如何确保字符串只包含数字和管道(或也)逗号、字符? EG:所有字符仅是数字和管道或仅是数字、逗号和管道
EG:
1|2,2|3 = true
1|2 = true
bob = false
bob|yes,no = false
这是我到目前为止所得到的
if (preg_match('/^[0-9|]|[0-9,|]+$/', $str)){
//if all of the characters are only numbers and pipes or numbers, commas and pipes only
}
最佳答案
尝试以下操作:
function ensure($str) {
return (bool) preg_match('/^[\d|,]+$/', $str);
}
var_dump(ensure('1|2,2|3'));
var_dump(ensure('1|2'));
var_dump(ensure('16|2'));
var_dump(ensure('bob'));
var_dump(ensure('bob|yes,no'));
var_dump(ensure(''));
打印
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
bool(false)
关于php - 正则表达式确保字符串仅包含管道、数字和/或逗号,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18742510/