2014-11-08 56 views
-1

我需要替换文章中的几个占位符,例如图像。查找/替换的最佳/最简单的字符串

我在考虑:imageX:的格式,其中X是图像的GUID。

但有没有更好的字符串使用,因为我必须搜索:image,然后采取GUID直到结尾:

是否有更好/更容易的字符串做这种替换?

在整篇文章中将会有多个:imageX:占位符,并且会有额外的占位符,例如:videoX:等等。

我当然会在文章:imageX:中用<img标记替换为正确的图像和其他占位符的其他标记。

-

的问小部件已经声称,问题是主观的,可能会被关闭,所以请,如果这不是问这个正确的地方,提出一个更好的。我觉得它应该没问题,因为它是关于代码的,因为我们在这里找到最好的占位符字符串,所以可以有一个明确的最简单(最短/最简单)的代码来替换这些代码。

回答

1

这看起来像一个足够好的字符串用于此。由于在那里有一个GUID,所以有人不会写这个GUID,也不打算替换它。

您可以使用正则表达式来捕获所有这些占位符并将其替换。它将帮助您提取标识符和guid,并且可以从中创建替换代码。

例子:

article = Regex.Replace(article, @":(\w+)(\w{8}-\w{4}-\w{4}-\w{4}-\w{12}):", m => { 
    string content = m.Groups[1].Value; 
    string guid = m.Groups[2].Value; 
    switch (content) { 
    case "image": return "<img src=\"getimage?guid=" + guid + "\" alt=\"image\">"; 
    case "video": return "<eeh... whatevs>"; 
    } 
    return m.Value; // unrecognised content, so leave it unchanged 
}); 
+0

thnx。猜测字符串和任何字符一样好;)<3 – b0x0rz 2014-11-08 19:11:13

0

我不认为这是最好的解决方案,你可以选择任何格式的字符替换,只是让你没有使用可能像普通文本的东西,例如:有没有机会您的文本包含:imageX:并且您不想替换?
然后编写代码并测试,优化。

+0

>>有没有机会,你的文字包含:IMAGEX:你不想更换? “没有。 – b0x0rz 2014-11-08 16:58:45

+0

>>然后编写代码并测试,优化。 “是的,试图避免这一点:P认为有人必须先处理过这个问题。 – b0x0rz 2014-11-08 16:59:15

+0

是的,我们都处理了,我不认为有人会告诉你一个最佳的解决方案。 – 2014-11-08 17:00:00