标签: c# .net regex
使用正则表达式(在c#.net中)是否可以检查字符串的上一行?
例如,我需要选择前一行不是一系列星号的字符串(上一行:******)
******
答案 0 :(得分:5)
(?m)^(?<!^\*+\r?\n).+
(?m)启用了多行模式,因此^可以匹配行的开头。 lookbehind检查前一行;如果成功(也就是说,不看到一行星号),.+会消耗当前行。
(?m)
^
.+
答案 1 :(得分:1)
您可以使用RegexOptions.MultiLine,然后匹配以下内容:
(?<!^\*+$\r?\n?.*)foo
仅当前一行不包含星号时才匹配“foo”。