Sua primeira função está quase certa. Apenas remova o sinalizador 'g' que significa 'global' (editar) e dê a ele algum contexto para identificar o segundo 'r'.
Edit: não vi que era o segundo 'r' antes, então adicionei o '/'. Precisa \ / para escapar do '/' ao usar um argumento regEx. Obrigado pelas votações, mas eu estava errado, então corrigirei e adicionarei mais detalhes para as pessoas interessadas em entender melhor o básico do regEx, mas isso funcionaria:
mystring.replace(/\/r/, '/')
Agora, a explicação excessiva:
Ao ler / escrever um padrão regEx, pense em termos de: <um caractere ou conjunto de caracteres> seguido por <a caractere ou conjunto de caracteres> seguido por <...
No regEx, <um caractere ou conjunto de caracteres> pode ser um de cada vez:
/each char in this pattern/
Então leia como e, seguido por a, seguido por c, etc ...
Ou um único <a caractere ou conjunto de caracteres> poderia ser caracteres descritos por uma classe de caracteres:
/[123!y]/
//any one of these
/[^123!y]/
//anything but one of the chars following '^' (very useful/performance enhancing btw)
Ou expandido para corresponder a uma quantidade de caracteres (mas ainda é melhor pensar como um elemento único em termos do padrão seqüencial):
/a{2}/
//precisely two 'a' chars - matches identically as /aa/ would
/[aA]{1,3}/
//1-3 matches of 'a' or 'A'
/[a-zA-Z]+/
//one or more matches of any letter in the alphabet upper and lower
//'-' denotes a sequence in a character class
/[0-9]*/
//0 to any number of matches of any decimal character (/\d*/ would also work)
Então junte um monte:
var rePattern = /[aA]{4,8}(Eat at Joes|Joes all you can eat)[0-5]+/g
var joesStr = 'aaaAAAaaEat at Joes123454321 or maybe aAaAJoes all you can eat098765';
joesStr.match(rePattern);
//returns ["aaaAAAaaEat at Joes123454321", "aAaAJoes all you can eat0"]
//without the 'g' after the closing '/' it would just stop at the first match and return:
//["aaaAAAaaEat at Joes123454321"]
E é claro que eu exagerei, mas meu argumento era simplesmente o seguinte:
/cat/
é uma série de 3 elementos de padrão (uma coisa seguida por uma coisa seguida por uma coisa).
E assim é isso:
/[aA]{4,8}(Eat at Joes|Joes all you can eat)[0-5]+/
Por mais maluco que o regEx comece a parecer, tudo se decompõe em uma série de coisas (coisas potencialmente com vários caracteres) que se sucedem sequencialmente. É um ponto básico, mas que demorei um pouco para passar, por isso exagerei na explicação aqui, pois acho que ajudaria o OP e outros novos no RegEx a entender o que está acontecendo. A chave para ler / escrever regEx é dividi-la em partes.