iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >如何使用正则表达式保留部分内容的替换功能
  • 717
分享到

如何使用正则表达式保留部分内容的替换功能

摘要

目录保留一处内容保留多处内容应用场景总结 使用正则表达式实现保留部分内容的替换 可惜没有如果,去替换时间对心的冷漠。什么是真的念念不忘,不过就是旧情被替换了而已。而夜幕,却

使用正则表达式实现保留部分内容的替换

可惜没有如果,去替换时间对心的冷漠。

什么是真的念念不忘,不过就是旧情被替换了而已。

而夜幕,却依旧如期降临,深冬的风替换曾经的烟花三月,举目四望,偌大的桌边只我一人,空对,一盏冰冷的茶。

对于查找替换大家可能都不陌生,基本上所有的编辑器都有这样的功能。但是普通的查找替换肯定不能满足用户对于泛化查找的需求。于是有了基于正则表达式的查找替换。对于正则表达式的规则这里不再说明,如果不太清楚可以自行百度。

保留一处内容

大家可以看这样一个例子:如下图,如果我想将所有的"第n章"替换为"第n节",那么如何替换?直接将"章"替换为"节",为了避免其他的"章"被替换掉,通常情况下我们需要一个一个进行替换。如何避免这种情况呢?

我们可以将"第n章"替换为"第n节",但问题是n是变化的,所以替换时会用到正则表达式。例如正则表达式"第[0-9]+章"匹配的是我们想要替换的,但是替换的内容是固定的,也就是说,中间的数字在替换时没办法保留。那么如何做到保留部分内容的替换呢?

这就需要在正则表达式中进行改进了。为了保留某部分,通常情况下我们在正则表达式中使用()将我们要保留的内容括住。如下,我们要保留的是中间的数字部分,在替换时使用$1将括号的内容表达出来。$1可以认为是一个变量,代表着()中的内容。

全部替换的结果如下:

保留多处内容

如图,对于"1 python 2 Java"这样的内容,要保留1和2,将Python和Java替换为C和c++,和上面说的一样,使用()将保留的内容括住,然后使用$1,$2分别代替第一个()和第二个()中的内容。

结果如下:

应用场景

看这样一个例子,对于从网页上复制过来的内容,在vscode中所呈现的样式和网页中看到的不同,如图:题号单独一行,排版看起来不够整齐。为了将题号放在题目前面,一个一个改有点累,所以决定使用正则表达式进行全局替换。

在进行替换时,要考虑到共性与差异性。

共性:对于所有的数字题号来说,其后面都跟着一个换行符。差异性:对于题目中以数字结尾的选项,同样满足共性,考虑利用题号前面的换行符,保持题号和选项的差异性。

总结 

到此这篇关于如何使用正则表达式保留部分内容的替换功能的文章就介绍到这了,更多相关正则表达式保留部分内容替换内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 如何使用正则表达式保留部分内容的替换功能

本文链接: https://www.lsjlt.com/news/200182.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • c语言怎么计算字符串长度
    在C语言中,可以使用内置的strlen()函数来计算字符串的长度。该函数位于string.h头文件中。以下是一个示例代码: #inc...
    99+
    2024-05-14
    c语言
  • c语言怎么判断三个数的大小
    可以通过比较三个数之间的大小关系来判断它们的大小。以下是一个示例代码: #include <stdio.h> int ...
    99+
    2024-05-14
    c语言
  • c++排序函数sort怎么使用
    在C++中,使用sort函数对容器中的元素进行排序,可以按照默认的升序排列,也可以自定义排序规则。 下面是一个简单的例子,对一个ve...
    99+
    2024-05-14
    c++
  • c++中string的compare函数怎么使用
    在C++中,可以使用string的compare函数来比较两个string对象的大小。该函数的原型如下: int compare(c...
    99+
    2024-05-14
    c++
  • c++中string的compare函数有什么用
    c++中string的compare函数用于比较两个字符串的大小关系。该函数返回一个整数值,表示两个字符串的比较结果。 具体来说,如...
    99+
    2024-05-14
    c++
  • c++中print函数的功能有哪些
    在C++中,通常使用std::cout来进行输出操作,而不是使用print函数。std::cout是C++标准库中的一个输出流对象,...
    99+
    2024-05-14
    c++
  • c语言数据结构怎么使用
    在C语言中,数据结构可以通过定义结构体来实现。以下是一些常见的数据结构的使用方法示例: 链表: #include <std...
    99+
    2024-05-14
    c语言
  • c++中print函数的用法是什么
    在C++中没有内置的print函数,但可以使用cout来输出内容到控制台。cout是C++标准库中的一个输出流对象,可以使用<...
    99+
    2024-05-14
    c++
  • c++中concept的用法是什么
    在C++20中,Concept是一种新的语言特性,用于定义类型要求和约束。Concept可以被用来约束函数模板、类模板和普通函数的参...
    99+
    2024-05-14
    c++
  • c++中concept的作用是什么
    在C++中,concept的作用是定义一种通用的约束,用于限制模板参数的类型范围。通过使用concept,可以在编译时对模板参数进行...
    99+
    2024-05-14
    c++
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作