字符匹配,替换的问题?

feng007lhf 2007-08-12 11:12:27
我现在有很多文件,每个文件中基本上都会有或多或少的一行是:texture 123.jpg
其中texture和其后面的那个空格是固定的,文件名123和其后缀是变换的,现在我只想把其后缀名(比如这里是jpg)该成dds,不能使用文件查找替换的,因为文件的其它地方会有jpg的,所以我必须找到有texture在其前面的,我才可以改这个文件的后缀名,

而且我觉得这个会用到模糊匹配,请教高手如何实现,越简单越好
...全文
96 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuwen1658 2007-08-13
  • 打赏
  • 举报
回复
先把 字段 变为 File,
查找File的扩展名
feng007lhf 2007-08-13
  • 打赏
  • 举报
回复
lxcnn(过客) 谢谢你了,按照你的方法,问题解决了。
一半乐事 2007-08-12
  • 打赏
  • 举报
回复
用文件查找替换,查找.jpg替换成.dds可以吧。
如果仅替换前面有texture 的,估计要代码实现了。思路很简单,查找texture ,然后找到其后的第一个.jpg,替换成.dds就可以了。搜索.jpg的时候可以设定个值X,搜索超过X个字符就不找了,避免搜索得太远把没有texture 前缀的.jpg也改了。
-过客- 2007-08-12
  • 打赏
  • 举报
回复
try

using System.Text.RegularExpressions;

string yourStr = ................;
string result = Regex.Replace(yourStr, @"(texture \S+\.)[^.\s]+", "$1dds");

texture和其后面的那个空格是固定的,那么它和文件名之间就只有一个空格吗,如果是,用上面的,如果不是,具体说明

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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