求【高手】写一个正则表达式,来替指定格式换字符串【求助】

lovsan6320 2010-11-23 04:34:08
我有这么一个文本类型文件:

>>>Default
111814211771650L.jpg
>>>Other
notfound.jpg
>>>Task_001
11191541152359w.jpg
11191613311210w.jpg
>>>Task_002
>>>Task_003
>>>Task_004
11191613311210w.jpg
111916133112104.jpg
>>>Task_005
>>>Task_006
;;*************End*********************

向大家解释文本格式:
>>>Task_004 ----(Task_004表示示任务编号)
11191613311210w.jpg ---- (Task_004任务下所属图片)

正在我想把该文里的>>>Task_002、>>>Task_003、>>>Task_005、>>>Task_006这几行文本删除掉,因为这些任务为空,没有所属图片(也就是这些任务编号的下一行非图片)。

public void DeleteNullTask(string txtPath)
{
string fileTxt = File.ReadAllText(txtPath);//读出Txt文本
//替换空Task
//(如何写啊)

File.WriteAllText(txtPath, fileTxt);//读入Txt文本
}

在此求高手帮助啊!
...全文
184 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovsan6320 2010-11-23
  • 打赏
  • 举报
回复
非常感谢wackyboy,基本上解决了,我另外再重新写了一个专门来替换最后一行!
lovsan6320 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wackyboy 的回复:]

引用 4 楼 lovsan6320 的回复:
引用 2 楼 sprc_lcl 的回复:
fileTxt = Regex.Replace(fileTxt, @">>>Task_\d+(\r|\n)*(?=>>>Task|$)", "");

任务编号只有前面的“>>>”是固定的,不一定有Task这个字符串啊


正则改成这个
C# code

@">>>\S+\s*(?![^>]……
[/Quote]
试过了,可以替换,但只能替换部分的!
最后一行好像不能替换,是为最后一行是;;开头的,不是>>>开头。
wackyboy 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lovsan6320 的回复:]
引用 2 楼 sprc_lcl 的回复:
fileTxt = Regex.Replace(fileTxt, @">>>Task_\d+(\r|\n)*(?=>>>Task|$)", "");

任务编号只有前面的“>>>”是固定的,不一定有Task这个字符串啊
[/Quote]

正则改成这个

@">>>\S+\s*(?![^>]+)"
lovsan6320 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sprc_lcl 的回复:]
fileTxt = Regex.Replace(fileTxt, @">>>Task_\d+(\r|\n)*(?=>>>Task|$)", "");
[/Quote]
任务编号只有前面的“>>>”是固定的,不一定有Task这个字符串啊
sprc_lcl 2010-11-23
  • 打赏
  • 举报
回复

fileTxt = Regex.Replace(fileTxt, @">>>Task_\d+(\r|\n)*(?=>>>Task|$)", "");
wackyboy 2010-11-23
  • 打赏
  • 举报
回复

Regex.Replace(input, @">>>Task_[0-9]{3}\s*(?![^>]+)","");
/* 结果
>>>Default
111814211771650L.jpg
>>>Other
notfound.jpg
>>>Task_001
11191541152359w.jpg
11191613311210w.jpg
>>>Task_004
11191613311210w.jpg
111916133112104.jpg

*/

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧