C#正则表达式求助,在线等,急!

现在有这么一个需求,我在编辑文档的时候,需要将文档内所有的标签替换需要的内容。
例如:

 <p>
<img src=\"http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg\" title=\"356019.jpg\" alt=\"356019.jpg\"/>
<img src=\"http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg\" title=\"356019.jpg\" alt=\"356019.jpg\"/>
</p>

替换为:

 <p>
<img src="empty.png" data-original=\"http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg\" title=\"356019.jpg\" alt=\"356019.jpg\"/>
<img src="empty.png" data-original=\"http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg\" title=\"356019.jpg\" alt=\"356019.jpg\"/>
</p>

前提是要保证src和data-original都只能在一个标签中出现一次!
因为每次替换掉src之后,访问编辑页面之后,又会生成一个src,如果直接替换的话,就会存在多个data-original

在此先感谢各位朋友,第一次在这上面问,没C币,还请各位帮帮忙

先还原一下啊:
1)去掉 src="empty.png"
2)把 data-original= 替换为 src=
然后再做现在这个替换。

 static void RegexReplaceSrc()
        {
            string html = @"<p>
<img src=""http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg"" title=""356019.jpg"" alt=""356019.jpg""/>
<img src=""http://localhost:9186/upload/image/20150416/6356482317004106408355884.jpg"" title=""356019.jpg"" alt=""356019.jpg""/>
</p>";
            if (!Regex.IsMatch(html, @"\bdata-original\b"))
            {
                Console.WriteLine(Regex.Replace(html, @"src=(""[^""]*"")", @"src=""empty.png"" data-original=$1"));
            }
        }
 string html = @"<p>
                                <script src=""http://www.localhost.com/js.js""></script>
                                <img src=""http://localhost:9186/upload/image/111111111111.jpg"" data-original="""" title=""356019.jpg"" alt=""356019.jpg""/>
                                <img title=""356019.jpg"" alt=""356019.jpg"" src=""http://localhost:9186/upload/image/222222222222.jpg"" />
                                <img src=""http://localhost:9186/upload/image/333333333333.jpg"" data-original=""http://localhost:9186/upload/image/333333333333.jpg"" title=""356019.jpg"" alt=""356019.jpg"" testProperty=""test_info""/>
                                <img data-original=""http://localhost:9186/upload/image/44444444444.jpg"" title=""356019.jpg"" alt=""356019.jpg"" testProperty=""test_info""/>
                                </p>";

                Console.WriteLine(html);
                Console.WriteLine("替换后");

                Console.WriteLine(Regex.Replace(html, @"<img(?<imgStart>\b[^<>]*?\b)(?<imgSrc>src[\s\t\r\n]*=[\s\t\r\n]*)(?<imgUrl>[""']?[\s\t\r\n]*[^\s\t\r\n""'<>]*)(?<imgOriginal>data-original[\s\t\r\n]*=[\s\t\r\n]*?[""']?[\s\t\r\n]*[^\s\t\r\n""'<>]*)?(?<imgEnd>[^<>]*?/?[\s\t\r\n]*)>", @"<img $1$2""empty.jpg"" data-original=$3$4>"));

                Console.ReadKey();
 static void RegexReplaceSrc2()
        {
            string html = @"<p>
                                <script src=""http://www.localhost.com/js.js""></script>
                                <img src=""http://localhost:9186/upload/image/111111111111.jpg"" data-original="""" title=""356019.jpg"" alt=""356019.jpg""/>
                                <img title=""356019.jpg"" alt=""356019.jpg"" src=""http://localhost:9186/upload/image/222222222222.jpg"" />
                                <img src=""http://localhost:9186/upload/image/333333333333.jpg"" data-original=""http://localhost:9186/upload/image/333333333333.jpg"" title=""356019.jpg"" alt=""356019.jpg"" testProperty=""test_info""/>
                                <img data-original=""http://localhost:9186/upload/image/44444444444.jpg"" title=""356019.jpg"" alt=""356019.jpg"" testProperty=""test_info""/>
                                </p>";
            var tmp = Regex.Replace(html, @"<img\s+[^>]*\bsrc=""[^""]*""[^>]*/>", x =>
             {
                 string v = x.Value;
                 if (!Regex.IsMatch(x.Value, @"\bdata-original\b"))
                 {
                     v = Regex.Replace(x.Value, @"src=(""[^""]*"")", @"src=""empty.png"" data-original=$1");
                 }
                 return v;
             });
            Console.WriteLine(tmp);
        }