string s = "Gewerbegebiet Waldstraße"; //other possible input "Waldstrasse"
int iFoundStart = s.IndexOf("strasse", StringComparison.CurrentCulture);
if (iFoundStart > -1)
s = s.Remove(iFoundStart, 7);
Я запускаю CultureInfo 1031 (немецкий).
IndexOf сопоставляет "straße" или "strasse" с определенным "strasse" и возвращает 18 как позицию.
Ни для удаления, ни для замены не требуется перегрузка для установки культуры.
Если я удалю 6 символов, используя "Удалить", символ 1 останется, если строка ввода "strasse" и "straße" будут работать. Если input-string является "straße" , и я удаляю 7 символов, я получаю ArgumentOutOfRangeException.
Есть ли способ безопасно удалить найденную строку? Любой метод, который предоставляет последний индекс IndexOf? Я подошел ближе к IndexOf и его собственный код под капотом, как и ожидалось, - поэтому не нужно делать что-то собственное...