Se vuoi abbinare più di un ; stringhe separate, quindi utilizza i gruppi di acquisizione.
db.getCollection('CollectionName').find(
{
"magnitude": /^1678(;1678)*$/,
"flag": /^[01](;[01])*$/
}
)
(;1678)* corrisponde alla stringa ;1678 , zero o più volte.
[01] corrisponde a 0 O 1