JavaScript RegEx não funciona?
Seu código verifica a legalidade de um formato de data usando uma expressão regular, mas sempre retorna falso. O problema está na construção da expressão regular.
Ao inicializar a expressão regular a partir de uma string, você precisa colocar aspas duplas nas barras invertidas (\) no padrão. Isso ocorre porque o analisador de string trata barras invertidas como caracteres especiais para constantes de string.
Código incorreto:
var regEx = new RegExp("^(0[1-9]|1[0-2])/\d{4}$", "g");
Código correto:
var regEx = new RegExp("^(0[1-9]|1[0-2])//\d{4}$", "g");
Ou, ainda mais simples, use sintaxe de expressão regular sem precisar escape das barras:
var regEx = /^(0[1-9]|1[0-2])/\d{4}$/g;
Agora, o normal expressão deve corresponder corretamente às datas com o formato "MM/AAAA". Certifique-se de colocar aspas duplas em todas as barras (/) incorporadas no padrão de expressão regular.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3