我现在有很多文件,每个文件中基本上都会有或多或少的一行是:texture 123.jpg
其中texture和其后面的那个空格是固定的,文件名123和其后缀是变换的,现在我只想把其后缀名(比如这里是jpg)该成dds,不能使用文件查找替换的,因为文件的其它地方会有jpg的,所以我必须找到有texture在其前面的,我才可以改这个文件的后缀名,而且我觉得这个会用到模糊匹配,请教高手如何实现,越简单越好

解决方案 »

  1.   

    tryusing System.Text.RegularExpressions;string yourStr = ................;
    string result = Regex.Replace(yourStr, @"(texture \S+\.)[^.\s]+", "$1dds");texture和其后面的那个空格是固定的,那么它和文件名之间就只有一个空格吗,如果是,用上面的,如果不是,具体说明
      

  2.   

    用文件查找替换,查找.jpg替换成.dds可以吧。
    如果仅替换前面有texture 的,估计要代码实现了。思路很简单,查找texture ,然后找到其后的第一个.jpg,替换成.dds就可以了。搜索.jpg的时候可以设定个值X,搜索超过X个字符就不找了,避免搜索得太远把没有texture 前缀的.jpg也改了。
      

  3.   

    先把 字段 变为 File,
    查找File的扩展名
      

  4.   

    lxcnn(过客) 谢谢你了,按照你的方法,问题解决了。