Regex удалить первую пустую строку - PullRequest
1 голос
/ 12 апреля 2020

В такой строке, как




z


h




Я хочу удалить все пустые значения с помощью регулярного выражения [\r\n]+$ Вы можете увидеть пример

Там все еще остается пустая строка сверху после замены, предположительно строка 3, в соответствии с разделом Информация о совпадении в приведенном выше примере. Любые предложения о том, как сопоставить это пустое значение. Спасибо

1 Ответ

1 голос
/ 12 апреля 2020

Сначала необходимо удалить все разрывы строк в начале строки.

/[\r\n]+$/mg удалит все разрывы строк, но остановится перед последним концом символьной строки строки символьного разрыва строки, поэтому удаляются все начальные пустые строки, кроме последней.

Таким образом, в шаблоне PCRE (а также. NET, Java, Python re, Ruby) вы можете использовать

\A[\r\n]+|[\r\n]+$

См. Регулярное выражение demo , используйте его с многострочным и глобальным флагом в тестере regex101.

Подробности

  • \A[\r\n]+ - начало строки и 1+ Символы CR и / или LF, как можно больше
  • | - или
  • [\r\n]+$ - 1+ символов CR / LF, как можно больше, за которыми следует разрыв строки или конец строки.
...