如何区分正则表达式的多行与单行模式?

2026-03-30 09:370阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计867个文字,预计阅读时间需要4分钟。

如何区分正则表达式的多行与单行模式?

在Expresso中,测试多行模式+ 测试一 + 注意:这里样例文本中3eeeee后面没有回车,光标就在e的后面。匹配的结果是3eeeee,如图的Search Results区所示。为什么这里不能匹配1abcde和2?

在Expresso中,测试“多行模式”

测试一

注意:这里样例文本中3eeeee后面没有回车,光标就在e的后面。匹配的结果是3eeeee,如上图的Search Results区中所示。

为什么这里不能匹配1abcde和2abc?

开启多行模式

^ 可以匹配字符串开头(字符串的开始位置),也可以匹配行的开头(即换行符\n之后的位置)
$ 可以匹配字符串结尾(字符串的结束位置), 也可以匹配行的结尾(即换行符\n之前的位置)

关闭多行模式

^ 只能匹配字符串开头
$ 只能匹配字符串结尾

知识点:\r为回车符,\n 为换行符。在windows中,我们平常说的换行,实质上是先回车,后换行;下面有更详细解说。

如上图所示:\r 匹配 [CR]、\n 匹配[LF] <—— CR为回车 LF为换行
字符串多个段落,比如
ab
cd
e
在windows操作系统中其实是:ab[CR][LF]cd[CR][LF]e

在windows中,文本中的回车换行储存为: 0D 0A。

阅读全文

本文共计867个文字,预计阅读时间需要4分钟。

如何区分正则表达式的多行与单行模式?

在Expresso中,测试多行模式+ 测试一 + 注意:这里样例文本中3eeeee后面没有回车,光标就在e的后面。匹配的结果是3eeeee,如图的Search Results区所示。为什么这里不能匹配1abcde和2?

在Expresso中,测试“多行模式”

测试一

注意:这里样例文本中3eeeee后面没有回车,光标就在e的后面。匹配的结果是3eeeee,如上图的Search Results区中所示。

为什么这里不能匹配1abcde和2abc?

开启多行模式

^ 可以匹配字符串开头(字符串的开始位置),也可以匹配行的开头(即换行符\n之后的位置)
$ 可以匹配字符串结尾(字符串的结束位置), 也可以匹配行的结尾(即换行符\n之前的位置)

关闭多行模式

^ 只能匹配字符串开头
$ 只能匹配字符串结尾

知识点:\r为回车符,\n 为换行符。在windows中,我们平常说的换行,实质上是先回车,后换行;下面有更详细解说。

如上图所示:\r 匹配 [CR]、\n 匹配[LF] <—— CR为回车 LF为换行
字符串多个段落,比如
ab
cd
e
在windows操作系统中其实是:ab[CR][LF]cd[CR][LF]e

在windows中,文本中的回车换行储存为: 0D 0A。

阅读全文