用于在 JavaScript 中提取两个标签之间的多行文本的正则表达式
使用正则表达式模式从 HTML 字符串中提取文本时面临挑战。具体来说,当 HTML 中存在换行符时,多行标志 (/m) 似乎不起作用。
要解决此问题,您需要使用“/.../s”修饰符,通常称为“dotall”修饰符。但是,需要注意的是,原生 JavaScript 中不存在此修饰符。
没有 Dotall 修饰符的解决方法:
如果您无法在中使用 /s 标志您当前的 JavaScript 环境,请考虑使用包含空白和非空白的字符类的解决方法字符:
[\s\S]
在您的情况下,正则表达式将如下所示:
/<div>
现代 JavaScript:Dotall 修饰符支持
中支持 ES2018 的现代 JavaScript 环境,可以直接使用“/s”(dotAll)标志。此标志使正则表达式中的点 (.) 字符也匹配换行符。
因此,可以使用 /s 标志重写原始正则表达式:
/<div>
通过使用dotall 修饰符 (/s) 或其解决方法 ([sS]),您可以确保您的正则表达式模式成功匹配指定 HTML 标记之间的多行文本,即使存在该文本中的换行符。
以上是如何使用正则表达式提取 JavaScript 中标签之间的多行文本?的详细内容。更多信息请关注PHP中文网其他相关文章!