Я пытаюсь использовать регулярное выражение, и регулярное выражение имеет недостаток производительности, даже если он скомпилирован.Должен ли я использовать Regex.IsMatch перед запуском Regex.Replace
Что я хочу знать, прежде чем на самом деле запустить Regex.Replace
, следует ли сначала проверить, есть ли совпадение в строке, используя Regex.IsMatch
?
Этот вопрос касается оптимизации и производительности.
Ответ на большинство вопросов производительности - «попробуйте в своей среде, измерьте его объективно и посмотрите». Однако в этом случае я бы предположил, что это пустая трата времени, чтобы выяснить, подходит ли регулярное выражение, прежде чем делать замену, поскольку первое, что нужно сделать в замене, в любом случае совпадать. –
Мое предположение не будет, вызывая Regex.IsMatch до Regex.Replace фактически замедлит выполнение. Но так как у вас есть код, почему бы не проверить его, чтобы убедиться? – Dirk