Javascript не поддерживает второстепенные утверждения. Он поддерживает только прогнозные. Ошибка возникает потому, что она предполагает? является квантификатором для 0 или 1, но нет элемента для количественной оценки в начале подшаблона (начинающегося с этой (
открывающей скобки)
Кроме того, в вашей строке, похоже, отсутствует несколько обратных косых черт, поскольку двойные кавычки там не экранируются. Это должно привести к синтаксической ошибке.
Возможно, этот код поможет вам сделать то, что вы пытаетесь достичь:
var match = mystring.match(/href=\"([^\"]*)\"/);
var matchedLink = match[1];