C#高手请进.求一算法.

来源:百度知道 编辑:UC知道 时间:2024/05/08 01:38:48
有如下路径字符串:
C:\WINDOWS\system32\ctfmon.exe
D:\LoaclNetWorkTools\Tencent\Foxmail\Foxmail.exe -min
Explorer.exe (注意,这个虽说没指定路径,但其默认指向C:\WINDOWS目录)
"C:\WINDOWS\system32\ctfmon.exe" -t (注意,这个路径里有双引号)

找出以上字符串路径的规律,并写出一算法.
这个算法可以提取出以上字符串路径中的绝对路径.
比如说:
D:\LoaclNetWorkTools\Tencent\Foxmail\Foxmail.exe -min 提取为:D:\LoaclNetWorkTools\Tencent\Foxmail\Foxmail.exe
"C:\WINDOWS\system32\ctfmon.exe" -t 提取为:C:\WINDOWS\system32\ctfmon.exe
Explorer.exe提取为C:\windows\Explorer.exe

要求这个算法通用于以上的字符路径,而不是每个字符串写一个算法(这点请大家明白.)

分数并不重要,只要大家帮小弟解决问题,,小弟愿意另外加分...
字符串不是固定的,但是字符串的变化规律就是我刚才上面说的那几种...
其实这些字符串就是注册中的启动项里面的字符串..我想把它们转换成绝对路径..

另外大提醒大家一点,注册表启动项里的程序并非都是.exe的可执行程序.com .bat .htm .doc等等....都是可以执行的.所以请大家不要以判断扩展名为准.

开始没考虑到空格,这次应该OK了,如果还有什么问题的话可以发消息给我:

using System;
using System.Text.RegularExpressions;

class Extract
{
    static void Main()
    {
        string[] path = {
            @"C:\WINDOWS\system32\ctfmon.exe",
            @"D:\LoaclNetWorkTools\Tencent\Foxmail\Foxmail.exe -min",
            @"Explorer.exe",
            @"""C:\WINDOWS\system32\ctfmon.exe -t"""
        };