Текущая реализация занимает в среднем 10-15 мс для запуска каждый раз, когда она называется (времена используя класс секундома до /после вызова. Она будет вызоваться в среднем 100 раз в минуту. < /p>
Входные данные-это строка в форме 12 значений, разделенных комы, смеси из одного или двух комбинаций символов /цифр. StringBuilder.replace Но это заменило бы, например, все буквы A, поэтому я переключился на матч Regex, который работает, но создание куча новых строк не кажется лучшим способом сделать это.
public static string ExactReplace(this string input, string find, string replace,
bool matchWholeWord)
{
string texttoreplace = matchWholeWord ? string.Format(@"\b{0}\b", find) : find;
return Regex.Replace(input, texttoreplace, replace);
}
public static string Parsedata(string str)
{
str = str.ExactReplace("aa", "0", true);
str = str.ExactReplace("a1", "1", true);
str = str.ExactReplace("ab", "2", true);
str = str.ExactReplace("rr", "3", true);
str = str.ExactReplace("r0", "4", true);
str = str.ExactReplace("s0", "5", true);
str = str.ExactReplace("s1", "6", true);
str = str.ExactReplace("s2", "7", true);
str = str.ExactReplace("st", "8", true);
str = str.ExactReplace("ss", "9", true);
str = str.ExactReplace("lt", "10", true);
str = str.ExactReplace("ll", "11", true);
string resultString = str;
return resultString;
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... n-a-string
Как оптимизировать свой метод C#, чтобы заменить точные совпадения данных в строке? [закрыто] ⇐ C#
Место общения программистов C#
1755518514
Anonymous
Текущая реализация занимает в среднем 10-15 мс для запуска каждый раз, когда она называется (времена используя класс секундома до /после вызова. Она будет вызоваться в среднем 100 раз в минуту. < /p>
Входные данные-это строка в форме 12 значений, разделенных комы, смеси из одного или двух комбинаций символов /цифр. StringBuilder.replace Но это заменило бы, например, все буквы A, поэтому я переключился на матч Regex, который работает, но создание куча новых строк не кажется лучшим способом сделать это.
public static string ExactReplace(this string input, string find, string replace,
bool matchWholeWord)
{
string texttoreplace = matchWholeWord ? string.Format(@"\b{0}\b", find) : find;
return Regex.Replace(input, texttoreplace, replace);
}
public static string Parsedata(string str)
{
str = str.ExactReplace("aa", "0", true);
str = str.ExactReplace("a1", "1", true);
str = str.ExactReplace("ab", "2", true);
str = str.ExactReplace("rr", "3", true);
str = str.ExactReplace("r0", "4", true);
str = str.ExactReplace("s0", "5", true);
str = str.ExactReplace("s1", "6", true);
str = str.ExactReplace("s2", "7", true);
str = str.ExactReplace("st", "8", true);
str = str.ExactReplace("ss", "9", true);
str = str.ExactReplace("lt", "10", true);
str = str.ExactReplace("ll", "11", true);
string resultString = str;
return resultString;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79738665/how-do-i-optimize-my-c-sharp-method-to-replace-exact-matching-data-in-a-string[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия