Как удалить строку?

2

У меня есть строка вроде этого:

string s1 = "abc,tom,--Abc, tyu,--ghh";

Эта строка является динамической, и мне нужно удалить все подстроки, начиная с "--".
Вывод для строки примера:

s1 = "abc,tom, tyu";

Как удалить эти подстроки?

  • 0
    Вы должны указать, как концы подстрок помечены. Похоже, что с запятой или концом строки, но вы должны действительно сказать это в своем вопросе.
Теги:
string

2 ответа

1
Лучший ответ

Посмотрите String.Replace

Прошу прощения, я должен был правильно прочитать вопрос. Regex приходит на ум, для вашего случая.

ИЗМЕНИТЬ

LINQ

string s1 = "abc,tom,--Abc, tyu,--ghh";
var s2 = s1
  .Split(',')
  .Where(s => s.StartsWith("--") == false)
  .Aggregate((start, next) => start + "," + next);
Console.WriteLine(s2);
  • 0
    String.Replace не удалит элемент, он просто удалит --
5

Try:

Regex.Replace(s1, "--[^,]*,?", "");

Это будет искать строку для блоков, начинающихся с --, иметь некоторые символы, которые не являются запятыми (пробелы или буквы) и запятой (необязательно - в конце нет запятой).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню