«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как извлечь многострочный текст между тегами в JavaScript с помощью регулярных выражений?

Как извлечь многострочный текст между тегами в JavaScript с помощью регулярных выражений?

Опубликовано 19 ноября 2024 г.
Просматривать:998

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

Регулярное выражение для извлечения многострочного текста между двумя тегами в JavaScript

Вы столкнулись с проблемами при извлечении текста из строки HTML с использованием шаблона регулярного выражения . В частности, многострочный флаг (/m), похоже, не работает, когда в HTML есть символы новой строки.

Чтобы решить эту проблему, вам нужно использовать модификатор «/.../s», обычно называемый модификатором «dotall». Однако важно отметить, что этот модификатор не существует в стандартном JavaScript.

Обходные пути без модификатора Dotall:

Если вы не можете использовать флаг /s в в вашей текущей среде JavaScript рассмотрите обходной путь, используя класс символов, включающий как пробельные, так и непробельные символы. символы:

[\s\S]

В вашем случае регулярное выражение будет выглядеть так:

/<div>

Современный JavaScript: поддержка модификаторов Dotall

В современных средах JavaScript, поддерживающих ES2018, вы можете напрямую использовать Флаг «/s» (dotAll). Этот флаг заставляет символ точки (.) в регулярном выражении также соответствовать символам новой строки.

Поэтому исходное регулярное выражение можно переписать с использованием флага /s:

/<div>

Используя модификатор dotall (/s) или его обходной путь ([\s\S]), вы можете гарантировать, что ваш шаблон регулярного выражения успешно сопоставляет многострочный текст между указанные теги HTML, даже если в этом тексте есть символы новой строки.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3