Hola,
Puedes hacerlo de varias maneras. De la forma en que lo planteas, la expresión regular la tienes que poner entre barras:
Y puedes reutilizar la parte que queda dentro del parentesis como $1 ($2, $3, etc si hubiera más). Pero tienes que utilizarlo dentro del método que estás usando, no lo devuelve como resultado. Por ejemplo si utilizas el método 'replace()':
Código:
var direccion="index.php?ac=Valor"
alert(direccion.replace(/^index.php\?ac=(.*)$/g, "$1")) // Valor
En este caso obviamente pierdes la variable direccion original, si quieres conservarla tendrias que usar una temporal.
También puede utilizar el objeto RegExp. Aquí la expresión regular si va entre comillas.
Código:
var test = new RegExp("^index.php\\?ac=(.*)$");
var matches = test.exec("index.php?ac=Valor");
alert matches[1]; // Valor
RegExp.exec() devuelve un array donde el primer elemento es el texto que encaja con el patrón (en este caso sería todo el texto) y los demás elementos son los que encajan con los grupos entre parentesis
Espero que te sirva