当我匹配6个数字时,它起作用
preg_match('/^[0-9]{6}$/',$keywords);
但是当我尝试为单个字母添加匹配时,没有人可以帮助我。
preg_match('/^[0-9]{6}[A-Z]{1}$/',$keywords);
答案 0 :(得分:2)
RegEx匹配6位数字和1个字母的字符串,而字母可以放在任何地方。
^(?=[^A-Za-z]*[A-Za-z][^A-Za-z]*$)[\dA-Za-z]{7}$
我希望匹配一个以6位数开头并以大写或小写字母结尾的字符串
^\d{6}[A-Za-z]$
答案 1 :(得分:0)
我认为用纯RegEx无法做到这一点。但是使用字符串长度,你可以这样做:
if(strlen($string) === 7 && prey_match('/^[0-9]*[a-zA-Z][0-9]*$/', $string) {
RegEx检查由任意数量的数字包围的一个字母,strlen检查确保字符串长度为7,使字符串为6位和1个字母。
我纠正了,Avinash Raj发布了一个实际可以做到的RegEx。