sed 之 & 符号

sed 之 & 符号

摘自:https://blog.csdn.net/jasonliujintao/article/details/53509620 

  • & 这个符号,其实很有用,在对相同模式进行处理的时候很方便。
  • 我们这边主要讲讲这个& 符号的用法

看一下下面这行命令,你觉得会输出什么?

echo hello|sed 's/hello/(&)/'
  • 1

看看结果,你是否猜对了:

[www@]$ echo hello|sed 's/hello/(&)/' (hello)
  • 1
  • 2
  • 相信大家也明白了,& 符号代表的是你前面的匹配的模式。
  • 那么我们也可以用正则表达式去匹配
echo hello| sed 's/[a-z]*/(&)/' 
  • 1

在看一下结果:

[www@]$ echo hello| sed 's/[a-z]*/(&)/'  (hello)
  • 1
  • 2

如果说我们多输出一个单词会怎么样?

[www@]$ echo "hello world"| sed 's/[a-z]*/(&)/'  (hello) world
  • 1
  • 2

为什么world没有加()呢?这个是前面一篇讲过 sed 是以行为单位的,默认匹配第一个。如果需要把world 也加上 () 那么就需要加上 g 参数。

[www@]$ echo "hello world"| sed 's/[a-z]*/(&)/g'  (hello) (world)
  • 1
  • 2

我们是否可以在替换的字符串里添加其他字符呢?当然可以:

[www@]$ echo hello| sed 's/[a-z]*/(&) world/g'  (hello) world
  • 1
  • 2

相信大家看了以上几个例子,就都知道这个 & 符号该怎么使用了。

posted @   LiuYanYGZ  阅读(1051)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2017-08-31 NFS原理详解
点击右上角即可分享
微信分享提示