Вправа – використання методів Remove() і Replace()
- 8 хв.
У цій вправі ви видаляєте символи з рядка за допомогою методу Remove() та замінюєте символи за допомогою методу Replace() .
Іноді потрібно змінити вміст рядка, видаливши або замінивши символи. Хоча ви можете замінити символи на вже відомі інструменти, для цього потрібно трохи тимчасово зберігати та зшивати рядки назад разом. На щастя, string тип даних має інші вбудовані методи та Remove()Replace(), для цих спеціалізованих сценаріїв.
Використання методу Remove()
Зазвичай ви використовуєте Remove() стандартне та узгоджене положення символів, які потрібно видалити з рядка.
Ця вправа містить дані, збережені в попередніх файлах, які мають фіксовану довжину, і з позиціями символів, виділеними для певних полів інформації. Перші п'ять цифр п'ятеро позначають ідентифікаційний номер клієнта. Наступні 20 цифр містять ім'я клієнта. Наступні шість позицій представляють останню суму рахунка-фактури клієнта, а останні три позиції представляють кількість товарів, замовлених у цьому рахунку-фактурі.
У наведених нижче кроках потрібно видалити ім'я клієнта, щоб відформатувати дані, щоб їх можна було надіслати до окремого процесу. Оскільки ви знаєте точне розташування та довжину імені користувача, його можна легко видалити за допомогою методу Remove() .
Видалення символів у певних розташуваннях із рядка
Видаліть або скористайтеся оператором примітки рядка
//, щоб прокоментувати весь код із попередніх вправ.Оновіть код у редакторі коду Visual Studio, як показано нижче.
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);У меню Файл код Visual Studio Code виберіть Зберегти.
Перед створенням або запуском коду необхідно зберегти файл Program.cs.
На панелі EXPLORER, щоб відкрити термінал у розташуванні папки TestProject, клацніть правою кнопкою миші TestProject , а потім виберіть Відкрити в інтегрованому терміналі.
Панель терміналів має відкритися та містити командний рядок, який показує, що термінал відкрито в папці TestProject.
У командному рядку термінала, щоб запустити код, введіть dotnet виконати і натисніть клавішу Enter.
Ви побачите такий результат:
123455000 3Метод
Remove()працює аналогічно до методуSubstring(). Ви маєте початкове положення та довжину, щоб видалити ці символи з рядка.
Використання методу Replace()
Метод Replace() використовується, якщо потрібно замінити один або кілька символів на інший символ (або без символів). Метод Replace() відрізняється від інших методів, які використовуються до цих пір, він замінює кожен екземпляр заданих символів, а не тільки перший або останній екземпляр.
Видалення символів незалежно від того, де вони відображаються в рядку
Оновіть код у редакторі коду Visual Studio, як показано нижче.
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);Збережіть кодовий файл, а потім за допомогою коду Visual Studio запустіть код.
Ви побачите такий результат:
This is example dataТут ви двічі скористалися цим методом
Replace(). Під час першого заміни рядка--пробілом. Другий раз, коли ви замінили рядок-пустим рядком, який повністю вилучає символ із рядка.
Коротко
Ось дві важливі речі, які слід пам'ятати:
- Метод
Remove()працює так само, якSubstring()метод, за винятком того, що він видаляє вказані символи в рядку. - Метод
Replace()обмінюється всіма екземплярами рядка з новим рядком.