Olá, Leandro.
Tudo bem?
Você está correto em sua observação. A função replace pode, de fato, ser usada diretamente com uma string, como você sugeriu. No entanto, o motivo pelo qual o professor optou por utilizar uma expressão regular (regex) neste contexto é para garantir que todos os hifens na string sejam substituídos, e não apenas o primeiro.
Quando você usa o replace com uma string, somente a primeira ocorrência da string é substituída. Por exemplo:
let str = "123-456-789";
str = str.replace("-", ",");
console.log(str); // Saída: 123,456-789
Como você pode ver, apenas o primeiro hífen foi substituído. No entanto, se usarmos uma expressão regular com a flag 'g' (global), todas as ocorrências serão substituídas:
let str = "123-456-789";
let exp = /-/g;
str = str.replace(exp, ",");
console.log(str); // Saída: 123,456,789
Neste caso, todos os hifens foram substituídos, que é o comportamento desejado no contexto da aula.
Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.