2012-04-12 43 views
3

嗨我试图找出一种方法来从Google Feed API返回的结果中删除代码。具体来说,他们在标题和描述内部放置了大胆的标签。从字符串中删除Unicode代码的最快方法

正在插入的代码如下:

\u003cb 
\u003e 
\u003c/b\u003e 

自固定金额我曾尝试做一个与string.replace()每个每串这些代码,但它导致了糟糕的表现不出奇。我不确定RegEx是否会更好(或更糟糕)。有没有人有如何删除这些想法? Google不提供从结果中删除标签的选项。

回答

2

你可以使用正则表达式等清除的统一字符编码这一个:

\\u[\d\w]{4} 

var subject = @"\u003cb\u003e\u003c/b\u003e"; 
var result = Regex.Replace(subject, @"\\u[\d\w]{4}", String.Empty); 

至于性能,this article似乎表明,正则表达式是要慢得多,但与自己的数据,我将运行自己的测试它可能会非常不同。正则表达式本身将在性能方面发挥重要作用,我不认为该文章说明正则表达式正在被使用,因此不可能进行比较。数据的大小和类型也会起很大作用,所以很难说没有理解你的数据哪个更好。

此外,您应该尝试compiling the regexRegexOptions.Compiled标志,看看是否提高性能。

+0

对不起,我不清楚。我其实根本不想要标签。我一直在寻找一种性能友好的方式来消除它们。我定位的设备会自动转换它们,这是我发现它们是粗体标记的原因。 – loyalpenguin 2012-04-13 00:14:14

+0

@loyalpenguin我明白了。我已经为你更新(重写)了答案。 – Robbie 2012-04-13 00:34:42

+0

优秀的答案。感谢您的时间。 – loyalpenguin 2012-04-13 01:10:45

相关问题