sed正则表达式如何替换匹配的中间内容?

a1bdf33rds21gdf1er比如我要匹配任何两个字母中间的数字1,将它替换成'a'怎么写。a1b变成aab,df1er变成dfaer。sed默认匹配三个字符怎么修... a1b
df33r
ds21g
df1er
比如我要匹配任何两个字母中间的数字1,将它替换成'a'怎么写。
a1b变成aab,df1er变成dfaer。
sed默认匹配三个字符怎么修改中间的那个
展开
 我来答
匿名用户
2021-07-14
展开全部

这里可以通sed的分组来完成, 在sed中通过()来进行分组,后面通过\1 来引用第一个分组 \2第二个...以此类推. 这里我们把\2改为了你想要的a就可以了。
# sed 's/\([a-zA-Z]\)\([0-9]\)\([a-zA-Z]\)/\1a\3/g' a.txt

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式