Мне нужно удалить строки, которые соответствуют определенному шаблону из некоторого текста. Один из способов сделать это - использовать регулярное выражение с якорями начала / конца, например:
var re = new Regex("^pattern$", RegexOptions.Multiline);
string final = re.Replace(initial, "");
Это работает нормально, за исключением того, что вместо пустой строки удаляется вся строка (включая строку). перерыв).
Чтобы решить эту проблему, я добавил необязательную группу захвата для разрыва строки, но я хочу быть уверен, что она включает в себя все различные варианты разрыва строки, поэтому я сделал это так:
var re = new Regex(@"^pattern$(\r\n|\r|\n)?", RegexOptions.Multiline);
string final = re.Replace(initial, "");
Это работает, но, похоже, должен быть более простой способ сделать это. Есть ли более простой способ надежного удаления всей строки, включая разрыв конца строки (если есть)?