Utilizando expresiones regulares para filtrar atributos en xpath con php

Estoy tratando de filtrar las tablas html con expresiones regulares que coinciden con su atributo id. ¿Qué estoy haciendo mal? Código que estoy tratando de implementar:

        $this->xpath = new DOMXPath($this->dom); 
            $this->xpath->registerNamespace("php", "http://php.net/xpath");
            $this->xpath->registerPHPFunctions();
        foreach($xpath->query("//table[php:function('preg_match', '/post\d+/', @id)]") as $key => $row)
    {

}

Error que obtengo: preg_match espera que el segundo parámetro sea una cadena, matriz dada.

Respuestas a la pregunta(2)

Su respuesta a la pregunta