.net 正则表达式:最大长度和出现次数

.net 正则表达式:最大长度和出现次数,.net,regex,.net,Regex,我被迫编写一个正则表达式,将输入字符串的最大长度限制为250个字符,最多七行。它们需要在一个正则表达式中 我将分别写: ^.{0,250}$ // max length ^([^\r\n]*[\r\n][^\r\n]*){0,6}$ //maximum seven lines 使用 (?=…)(?=…)似乎不起作用 有没有办法在一个正则表达式中实现这一点 编辑:这是.NET您可以使用 (?s)^(?!(?:[^\r\n]*\r?\n){7}).{0,250}$ 说明: (?s)#模式修饰符:

我被迫编写一个正则表达式,将输入字符串的最大长度限制为250个字符,最多七行。它们需要在一个正则表达式中

我将分别写:

^.{0,250}$ // max length
^([^\r\n]*[\r\n][^\r\n]*){0,6}$ //maximum seven lines
使用 (?=…)(?=…)似乎不起作用

有没有办法在一个正则表达式中实现这一点

编辑:这是.NET

您可以使用

(?s)^(?!(?:[^\r\n]*\r?\n){7}).{0,250}$
说明:

(?s)#模式修饰符:点匹配换行符
^#匹配字符串的开头
(?!#断言不可能匹配。。。
(?:#(组开头):
[^\r\n]*#除换行符外的任意字符数
\r?\n#后跟一个Windows或Mac/Unix新行
){7} #重复七次
)#结束先行断言
.{0250}#最多可匹配250个任何类型的字符
$#匹配字符串的结尾

Regex语言千差万别。请指定您使用的regex方言(即,哪种编程语言)。