Я использую .NET Micro Framework 4.1, который не реализует класс Regex
или методы String.Replace
/String.Remove
, насколько мне известно.Как удалить все вхождения символа/подстроки?
я строка определяется как:
string message = "[esc]vI AM A STRING. [esc]vI AM A STRING AND DO LOTS OF THINGS...";
Есть ли способ удалить все вхождения [esc]v
из этой строки? Где используется escape-символ (0x1B
), а затем 0x76
в NetMF?
Это, надеюсь, оставить меня:
string message = "I AM A STRING. I AM A STRING AND DO LOTS OF THINGS...";
Я думал, возможно, с использованием метода String.Split()
, но это, кажется, слишком требовательные к памяти, как код работает на малой memoried плате NETMF.
Это не будет _remove_ персонажей. – CodeCaster
@CodeCaster: Какой подход будет * вы принимаете? – jbutler483
@jbutler Я не совсем специалист по ограниченным ресурсам, поэтому я просто создаю новый массив того же размера, копируем действительные символы и сохраняем счетчик для новой длины. Или сохраните 'removedCharsCount' и сделайте' chars [i - removedCharsCount] = chars [i] ', увеличивая этот счетчик каждый раз, когда встречается символ для удаления. Но см. Также [Самый быстрый способ удаления символов из строки] (http://stackoverflow.com/questions/2182459/fastest-way-to-remove-chars-from-string). – CodeCaster