正则表达式(7):转义符

news2024/11/17 19:35:46

正则表达式(7):正则表达式(5):转义符

本博文转载自

此处,我们来认识一个常用符号,它就是反斜杠 “\”

反斜杠有什么作用呢?先不着急解释,先来看个小例子。

前文中说过,在正则表达式中,”.”代表任意单个字符(如果不明白请回顾前文),比如,可以使用”a…”表示字母a后面跟随了两个任意字符,如下。

在这里插入图片描述

正如上图所示,只要字母a后面跟随了两个字符,即可被匹配到,无论后面跟随的两个字符是什么,数字、符号、字母均可。

但是,我现在的要求变了, 我只想找出文本中 “以a开头,后面跟随了两个’点’的文本” ,换句话说就是,我想要匹配到上图中文本文件中的第6行。

在这里插入图片描述

那么,我该怎么办呢?
理论上来说,我想要找出”a点点”,应该使用如下命令

但是正如之前的示例一样,”.”在正则表达式中代表任意单个字符,所以,”.”在正则表达式中,并不能表示”点”本身。

可是,我们现在的需求就是匹配”点”本身,并不希望”.”代表其他字符,我只希望”.”就代表”点”。

这个时候,就需要用到反斜杠”\”

“\”与正则中的符号结合在一起时,就表示这个符号本身的含义,示例如下

在这里插入图片描述
如上图所示,”\.”就表示单个”点”,我们称反斜杠”\”为转义字符。
同理,如果我们想要匹配””本身,而不是想要使用””表示任意次数,我们可以使用”*”,示例如下。

在这里插入图片描述
前文中提到过,在基本正则表达式中,”\?”表示其前面的字符出现0次或1次,那么,如果我们想要匹配问号本身,我们应该怎么做呢?

“\?”就已经包含反斜杠了,难道我们要再加一个反斜杠,嘻嘻~不要陷入思维怪圈了,在基本正则表达式中,如果想要匹配问号本身,只需要使用”?”即可,示例如下

在这里插入图片描述

加号同理,基本正则中,使用”+”表示匹配前面的字符至少1次,当我们想要匹配加号本身时,直接使用”+”就行了,示例如下

在这里插入图片描述
在某些时候,我们就是想要匹配反斜杠本身,我们该怎么办呢?没错,在反斜杠前面加上反斜杠就行了,示例如下。

在这里插入图片描述

细心如你一定发现了,上例中使用了单引号,而之前的示例中都使用双引号。

此处如果使用双引号将 正则”引起”,将会报错,示例如下
在这里插入图片描述
如果需要用 “” (双引号) 匹配单个斜杆该怎么办呢?
答案是

grep "\\\\" file

好了,关于转义符反斜杠就总结到这里,希望能够对你有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1295178.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python random模块及用法

random 模块主要包含生成伪随机数的各种功能变量和函数。 在 Python 的交互式解释器中先导入 random 模块,然后输入 random.__all__ 命令(__all__ 变量代表了该模块开放的公开接口),即可看到该模块所包含的全部属性和函数&#x…

【分享】我想上手机器学习

目录 前言 一、理解机器学习 1.1 机器学习的目的 1.2 机器学习的模型 1.3 机器学习的数据 二、学习机器学习要学什么 2.1 学习机器学习的核心内容 2.2 怎么选择模型 2.3 怎么获取训练数据 2.4 怎么训练模型 三、机器学习的门槛 3.1 机器学习的第一道门槛 3.2 机器…

ES-环境安装(elasticsearch:7.17.9,kibana,elasticsearch-head)

ES 环境搭建 1 拉取镜像 常用三件套 docker pull kibana:7.17.9 docker pull elasticsearch:7.17.9 docker pull mobz/elasticsearch-head:52 启动镜像 elasticsearch 安装 这里可以先不挂载文件启动一波,然后把容器里的文件拷贝出来 docker run -p 19200:9200 …

[oeasy]python0002_终端_CLI_GUI_编程环境_游戏_真实_元宇宙

回忆 上次 了解了 python 语言的特点 历史悠久功能强大深受好评已成趋势 3大主流操作系统 macwindowslinux 我们 选择 linux 作为基础系统 为什么选择 黑乎乎的命令行界面呢?🤔 GUI vs CLI 个人电脑 用图标和菜单组成 图形界面(GUI) Graphic User I…

Numpy数组的重塑,转置与切片 (第6讲)

Numpy数组的重塑,转置与切片 (第6讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ�…

朴素贝叶斯 朴素贝叶斯原理

朴素贝叶斯 朴素贝叶斯原理 判别模型和生成模型 监督学习方法又分生成方法 (Generative approach) 和判别方法 (Discriminative approach)所学到的模型分别称为生成模型 (Generative Model) 和判别模型 (Discriminative Model)。 朴素贝叶斯原理 朴素贝叶斯法是典型的生成学习…

鸿蒙OS应用开发之最简单的程序

鸿蒙OS应用开发之最简单的程序 前面介绍怎么样安装鸿蒙应用开发的环境,然后试着运行起来,并安装运行的虚拟机,以及对应9.0版本的API和SDK等软件。这样就具备了基本的开发基础,就可以进入创建应用程序开发了。 在我们起飞之前&…

【Java基础系列】Cron表达式入门

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

通过kubeadm方式安装k8s

虚拟机最少是 2 core,master内存最小3G,node内存最小2G. 要求的Docker版本是18.03,如果不是安装的docker ce,版本是过旧的,可以选择删除后重新安装; 也可以重新创建一个虚拟机执行以下命令。 简单方法&am…

解决“使用command+shift+a 总是弹出默认终端”

冲突出现的终端如下 问题原因 MacOS下使用IntelliJ 系列的IDE就是经常遇到这个问题,原因该快捷键与系统的 《在“终端”中搜索man页面索引 》功能的快捷键冲突了,Find Action是一个很高频使用的! 解决方案 把系统《在“终端”中搜索man…

5组10个共50个音频可视化效果PR音乐视频制作模板

我们常常看到的图形跟着音乐跳动,非常有节奏感,那这个是怎么做到的呢?5组10个共50个音频可视化效果PR音乐视频制作模板满足你的制作需求。 PR音乐模板|10个音频可视化视频制作模板05 https://prmuban.com/36704.html 10个音频可视化视频制作…

Python语言求解嵌套列表中的最大元素和

更多资料获取 📚 个人网站:ipengtao.com 在处理嵌套列表时,有时我们需要找到列表中的最大元素以及对应的位置。本文将深入讨论如何使用Python有效地解决这个问题。我们将使用不同的方法,包括递归、列表推导和NumPy库,…

我有才打造私域流量的知识付费小程序平台

在当今数字化时代,知识付费市场正在迅速崛起,而私域流量的概念也日益受到重视。私域流量指的是企业通过自有渠道获取的、能够自由支配的流量,这种流量具有更高的用户粘性和转化率。因此,打造一个基于私域流量的知识付费小程序平台…

VBA_MF系列技术资料1-237

MF系列VBA技术资料 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧,我参考大量的资料,并结合自己的经验总结了这份MF系列VBA技术综合资料,而且开放源码(MF04除外),其中MF01-04属于定…

防水,也不怕水。Mate X5是如何做到让你湿手湿屏也不影响操作的?

相信不少人都碰到过当手机屏幕存在小水珠时,触控变得不灵敏,或者出现“幽灵触屏”,指东打西的情况。 尤其是在洗澡、做饭,或者在户外遇到下雨天气时,如果打湿的手机收到重要聊天消息或者电话,却因为湿屏导…

Hazel引擎学习(十二)

我自己维护引擎的github地址在这里,里面加了不少注释,有需要的可以看看 参考视频链接在这里 Scene类重构 参考:《InsideUE4》GamePlay架构(二)Level和World 目前我的Scene类基本只是给entt的封装,提供了…

【risc-v】易灵思efinix FPGA riscv嵌入式软件源码分享

系列文章目录 分享一些fpga内使用riscv软核的经验,共大家参考。后续内容比较多,会做成一个系列。 本系列会覆盖以下FPGA厂商 易灵思 efinix 赛灵思 xilinx 阿尔特拉 Altera 本文内容隶属于【易灵思efinix】系列。 【risc-v】易灵思efinix FPGA sap…

若依框架的搭建

若依框架 若依框架的搭建(前后端分离版本)环境要求IDEA拉取Gitee源码Mysql 配置Redis 配置后端启动前端配置问题解决 效果展示 若依框架的搭建(前后端分离版本) 简介 RuoYi-Vue 是一个 Java EE 企业级快速开发平台,基…

ssh安装及问题解决

ssh安装及遇到的问题 ssh分为客户端 openssh-client 和服务器 openssh-server,可以利用以下命令确认是否安装: dpkg -l | grep ssh我用ubantu安装的,所以默认安装了客户端 安装客户端和服务器端的命令分别为: sudo apt-get ins…

LLM时代,数据为王,19个开源数据集下载网站汇总

大模型时代,数据为王,在哪里寻找开源数据集,是一个比较头疼的问题。经过调研整理,下面列出了目前可以寻找开源大模型数据集的网站清单。 1、HuggingFace开源数据集 链接:https://huggingface.co/datasets 镜像&#…