Gracias por contestar
plus_ultra.
Ahora, con esta linea puesta:
Código PHP:
$txt = preg_replace("/\[ficha\|([^\\[]*)]/e", crearvinculo('$1'), $txt);
Me da el siguiente error:
Fatal error: Failed evaluating code
Quitando la
e, que dices que es para reemplazar la cadena por lo que la función devuelva, pues no da error, lo que falta la parte que hay entre [ficha| y ], es decir, lo único variable de la expresión regular.