2012-04-12 3 views
3

Привет Я пытаюсь выяснить способ удаления тегов из результатов, возвращаемых API фида Google. В частности, они помещают жирные метки в заголовки и внутри описания.Самый быстрый способ удаления кодов Юникода из строки

коды, которые вставляются следующим образом:

\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 regex с флагом RegexOptions.Compiled, чтобы узнать, повышает ли это производительность.

+0

Жаль, что я не был чист. Мне вообще не нужны теги. Я искал удобный способ их удаления. Устройство, на которое я нацеливаюсь, автоматически конвертировало их, и я узнал, что они выделены жирным тегом. – loyalpenguin

+0

@loyalpenguin я понимаю сейчас. Я обновил (переписал) ответ для вас. – Robbie

+0

Отличный ответ. Спасибо за ваше время. – loyalpenguin

 Смежные вопросы

  • Нет связанных вопросов^_^