Regex проверить предыдущую строку - PullRequest
0 голосов
/ 13 ноября 2009

Можно ли с помощью регулярного выражения (в c # .net) проверить предыдущую строку строки?

Например, мне нужно выбрать строки, в которых предыдущая строка не является серией звездочек (предыдущая строка: ******)

Ответы [ 2 ]

5 голосов
/ 14 ноября 2009
(?m)^(?<!^\*+\r?\n).+

(?m) включает многострочный режим, поэтому ^ может соответствовать началу строки. Взгляд назад проверяет предыдущую строку; если это удается (то есть, не видит строку звездочек), .+ потребляет текущую строку.

1 голос
/ 13 ноября 2009

Вы можете использовать RegexOptions.MultiLine , а затем сопоставить что-то вроде следующего:

(?<!^\*+$\r?\n?.*)foo

Это соответствует "foo", только если предыдущая строка не состоит из звездочек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...