您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用正则表达式使点匹配换行符

如何使用正则表达式使点匹配换行符

您需要使用DOTALL修饰符。

'/<div>(.*)<\/div>/s'

这可能无法完全满足您的需求,因为您的贪婪匹配。您可以改为尝试非贪婪匹配:

'/<div>(.*?)<\/div>/s'

如果没有其他标签,您也可以通过匹配除“ <”以外的所有内容解决此问题:

'/<div>([^<]*)<\/div>/'

一个观察结果是,您不需要将其/用作正则表达式定界符。使用另一个字符意味着您不必逃避/in</div>,从而提高了可读性。这适用于所有上述正则表达式。如果您使用’#’而不是’/’,将显示以下内容

'#<div>([^<]*)</div>#'

但是,由于嵌套的div,多余的空格,HTML注释和其他各种原因,所有这些解决方案都可能失败。HTML太复杂,无法使用Regex解析,因此您应该考虑使用HTML解析器。

其他 2022/1/1 18:14:41 有566人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶