2019-01-14搞清楚正则表达式中的\\与\\\\

我一直都很困惑为啥\\转义符在正则表达式里要写成 \\\\


PHP里的正则表达式函数为preg_match()

例如

\n 匹配的是换行符

所以当我们想使用preg_match()进行正则表达式的匹配的时候

就是

pre_match('/\n/' ,$text)

为啥会是这样呢?

首先pre_match接受的是字符串形式的正则表达式文本

,字符串形式中\就具有转义的功能,因此不需要在对它进行转义


同样如果想匹配"\n"的字符串形式

首先你的正则表达式包含 \字符和n

就得使用\\\\四个符号了

前面两个经过字符处理后变成一个\字符,后面两个也一样

经过字符处理之后就变成了\\n在交给正则表达式处理

就变成了"\n"字符



所以在PHP中就得分别对对应的字符进行转义 //// => //

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 正则表达式是一种描述字符串结果的语法规则,是一个特定的格式化模式,可以匹配、替换、截取匹配的字符串。常用的语...
    醉于麦田阅读 514评论 0 0
  • 关于PCRE的介绍以及实现正则表达式功能的所有说明,都可以在官方手册中看到:正则表达式(兼容 Perl) 一、认识...
    拿破仑蛋糕阅读 1,623评论 0 1
  • Python中的正则表达式(re) import rere.match #从开始位置开始匹配,如果开头没有则无re...
    BigJeffWang阅读 7,137评论 0 99
  • PHP常用正则表达式汇总 正则表达式在 PHP 中的应用在 PHP 应用中,正则表达式主要用于: 正则匹配:根据正...
    DragonRat阅读 1,468评论 0 4
  • python的re模块--细说正则表达式 可能是东半球最详细最全面的re教程,翻译自官方文档,因为官方文档写的是真...
    立而人阅读 22,945评论 4 46