中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-13 18:50
中国DOS联盟论坛 » 论坛回收站 » 又碰到一个棘手的问题,特别向高手请教。
楼 主 又碰到一个棘手的问题,特别向高手请教。 发表于 2011-01-24 08:25 ·  中国 北京 联通
新手上路
积分 17
发帖 17
注册 2008-11-23 10:42
UID 131820
性别 男
状态 离线
现在,本人又碰到一个棘手的问题,特别向高手请教。

就是需要首先判断一下,各行文本中“前n个相同且连续的字符”到底是不是我想要删除的那些特定字符,如果“前n个相同且连续的字符”是我指定的那些字符就删除“前n个相同且连续的字符”,但不是删除该行。

我只想删除各行文本中“前n个相同且连续的字符”含有特殊字符“#”和“?”和“@”的字符本身删除,即使本行当中其它位置也有该字符,也不用管它了,只删除“前n个相同且连续的”有条件指定的字符即可。

例如: 在1.txt 中

#############abcdefgh#1666666@
#######1234??5##
???????????????????????????6789
????????????????????11111112222?55555?
@@@@@@@@6666#777?88888@9999#


说明:我就是想删除以上五行前面的“前n个相同且连续的字符”
即,删除第一行中的前#############,而保留abcdefgh#1666666@
删除第二行中的前#######,而保留1234??5##
删除第三行中的前???????????????????????????,而保留6789
删除第四行中的前????????????????????,而保留11111112222?55555?
删除第五行中的前@@@@@@@@,而保留6666#777?88888@9999#


最终我想要达到的效果是 保存在 2.txt

abcdefgh#1666666@
1234??5##
6789
11111112222?55555?
6666#777?88888@9999#


在这里先谢谢各位老师了。 并在此新年之际,祝各位老师快乐。
2 发表于 2011-01-24 11:53 ·  中国 江苏 苏州 太仓市 电信
新手上路
积分 10
发帖 11
注册 2010-12-24 12:16
UID 179776
性别 男
状态 离线
你这个太复杂了,没有印象用P能删除指定行里的符号,替换到有可能。
论坛跳转: