"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como extrair texto multilinha entre tags em JavaScript com Regex?

Como extrair texto multilinha entre tags em JavaScript com Regex?

Publicado em 19/11/2024
Navegar:237

How to Extract Multiline Text Between Tags in JavaScript with Regex?

Regex para extrair texto multilinha entre duas tags em JavaScript

Você está enfrentando desafios ao extrair texto de uma string HTML usando um padrão regex . Especificamente, o sinalizador multilinha (/m) não parece estar funcionando quando há novas linhas no HTML.

Para resolver esse problema, você precisa utilizar o modificador "/.../s", comumente referido como modificador "dotall". No entanto, é importante observar que esse modificador não existe no JavaScript vanilla.

Soluções alternativas sem o modificador Dotall:

Se você não puder usar o sinalizador /s em seu ambiente JavaScript atual, considere uma solução alternativa usando uma classe de caracteres que inclua caracteres de espaço em branco e não-espaço em branco:

[\s\S]

No seu caso, a regex ficaria assim :

/<div>

JavaScript moderno: suporte ao modificador Dotall

Em ambientes JavaScript modernos que suportam ES2018, você pode usar diretamente o " /s" (pontoTodos). Este sinalizador faz com que o caractere ponto (.) no regex também corresponda aos caracteres de nova linha.

Portanto, seu regex original pode ser reescrito usando o sinalizador /s:

/<div>

Usando o modificador dotall (/s) ou sua solução alternativa ([\s\S]), você pode garantir que seu padrão regex corresponda com êxito ao texto multilinha entre as tags HTML especificadas, mesmo quando houver novas linhas dentro desse texto.

Tutorial mais recente Mais>

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