我可以获得正确的正则表达式来查找包含“TB”+ 8个数字并且不以“C”结尾的所有字符串
这应匹配: TB12345678 这不应与 TB12345678C
相匹配我的PHP代码是:
$this->tbTrabajadores = preg_grep('/^TB([0-9]{8})[^C]/', $this->tablas);
任何人都可以帮助我吗?
感谢!!!
答案 0 :(得分:2)
您最后可以使用交替:
$this->tbTrabajadores = preg_grep('/^TB\d{8}([^C]|$)/', $this->tablas);
([^C]|$)
将匹配非C字符或行结尾。
匹配8位后,您还可以使用负向前瞻:
/^TB\d{8}(?!C)/
答案 1 :(得分:0)
您可以尝试这样:
$str = 'TB12345678Cddd';
preg_match_all('/^TB([0-9]{8})/', $str, $a);
var_dump($a);