In pratica associa l'insieme di lettere e numeri tra 1 punto '.' (Es: sito.com) alle variabili $1 e $2.

Quindi se nella stringa trova appunto sito.com, lo trasformerà in sito.com

Più chiaro ora?

Per il discorso del '?' sicuramente dovrovesti trovare un regex che comprenda anche i '?'.