全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1023|回复: 21

有没有懂sed替换的? 只匹配字母和数字组合,不能纯数字

[复制链接]
发表于 2022-11-29 16:26:12 | 显示全部楼层 |阅读模式
如题,我目前在用sed -i 不开启 -r 的情况下,匹配本地文本字符串替换,

具体是这样的每行
xxxxxxxxxxxx_584b284368b25bef.xxx
xxxxxxxxxxxx_0000000000000000.xxx
xxxxxxxxxxxx_aaaaaaaaaaaaaaaaa.xxx

我想替换只包含 字母和数字组合的部分,其他纯数字或纯字母的不替换。

目前用 _[a-z0-9]\{16\}\+ 把全部都替换了,我想区别替换,大佬有办法吗?

发表于 2022-11-29 16:43:07 | 显示全部楼层
哪来的这么复杂的需求,正则匹配最难的就是没有规则+不修改一部分。
先替换数字开头的,再替换字母开头的。具体自己想办法
发表于 2022-11-29 16:33:51 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| 发表于 2022-11-29 16:35:24 | 显示全部楼层
whyclong 发表于 2022-11-29 16:33
有点难,这种我一般就写多几步,把纯数字和纯字母的挑出来,然后再替换。 ...

我也网上搜索也找了一遍,可能我每发现到有我这需求的,我也尝试各种组合也不行,所以才来问各位大佬了
发表于 2022-11-29 16:39:18 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2022-11-29 16:45:13 | 显示全部楼层
你可以变通一下,我先占个楼
 楼主| 发表于 2022-11-29 16:49:18 | 显示全部楼层
本帖最后由 小朋友 于 2022-11-29 16:51 编辑
adminisd 发表于 2022-11-29 16:43
哪来的这么复杂的需求,正则匹配最难的就是没有规则+不修改一部分。
先替换数字开头的,再替换字母开头的 ...


哎,现在去各种群请教所谓的大佬,个个说得简单,都是说先这样,先那样,就是没有给你示例。我都失望了
发表于 2022-11-29 16:57:01 | 显示全部楼层
小朋友 发表于 2022-11-29 16:49
哎,现在去各种群请教所谓的大佬,个个说得简单,都是说先这样,先那样,就是没有给你示例。我都失望了 ...


多分几个步骤就好了,要多不耻下问
 楼主| 发表于 2022-11-29 17:05:45 来自手机 | 显示全部楼层
Bai. 发表于 2022-11-29 16:57
多分几个步骤就好了,要多不耻下问

也可以,我先匹到纯数字或者纯字母的打乱,让后面替换字母和数字组合无法匹配到,待字母和数字组合的替换完成,再恢复这 纯数字或者纯字母的。
只是这样就不够明智简短。
发表于 2022-11-29 17:06:21 | 显示全部楼层
n=0
for  文本第n行
  过滤匹配中间那段
     如果 文本中间那段内容全相同
        n=n+1
        进入下个循环   
     否则  替换中间那段
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-26 22:31 , Processed in 0.069051 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表