¿Cómo gestiona preg_match el delimitador cuando se usa \ Q .. \ E?

Estoy jugando con expresiones regulares y probé la secuencia de escape \ Q .. \ E.

Primer intento:

$regex = '/\Q http:// \E/';
var_dump(preg_match($regex, ' http:// '));

Me dice que '\' es un modificador desconocido, completamente comprensible.

Segundo intento:

$regex = '/\Q http:\/\/ \E/';
var_dump(preg_match($regex, ' http:// '));
var_dump(preg_match($regex, ' http:\/\/ '));

Se ejecuta, no coincide con la primera cadena, pero coincide con la segunda.

Sé que podría usar otro carácter delimitador o resolverlo sin \ Q .. \ E, pero tengo curiosidad por saber cómo funciona.

A través de eso, al principio, separa la expresión regular de los modificadores por el delimitador (con el manejo del escape si es necesario) y después el motor de expresión regular interpreta el \ Q .. \ E, pero parece que cuando el \ Q interviene, entonces no maneja el delimitador escapado de la misma manera.

¿Qué pasa exactamente en este caso?

¡Gracias!

Respuestas a la pregunta(4)

Su respuesta a la pregunta