正则表达式之Multiline和Dotall模式

前端之家收集整理的这篇文章主要介绍了正则表达式之Multiline和Dotall模式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一直以来把Multiline和Dotall模式混淆了,奇怪怎么一直都没有出问题?人品?

不过出来混总是要还的,今天和一个同事讨论一个正则表达式终于"出丑"了.然后才把二者搞清楚.


* multiline

如果regexp里出现了^或者$,那么by default只会匹配第一行. 设置了Multiline,会匹配所有行.

比如

regexp: /^.*AAA.*$/

src: "abcBBBdef/nsdfAAAfff/nsdf"

without Multiline: 匹配失败

with Multiline: 匹配成功


所有,在regexp里出现了^$,Multiline才有意思,否则是没有意义的.


* dotall

默认情况下,.不会匹配换行符,设置了Dotall模式,.会匹配所有字符包括换行符

比如

regexp: /BBB.*AAA/

src: "abcBBBdef/nsdfAAAfff/nsdf"

without Dotall: 匹配失败

with Multiline: 匹配成功

原文链接:https://www.f2er.com/regex/359046.html

猜你在找的正则表达式相关文章