最小长度正则表达式

Mar*_*ark 6 c# regex

我正在尝试编写一个正则表达式来验证用户输入是否大于X个非空白字符.我基本上试图过滤掉开始和结束空格,同时仍然确保输入大于X个字符; 字符可以是任何东西,只是不是空格(空格,制表符,返回,换行符).这是我一直在使用的正则表达式,但它不起作用:

\s.{10}.*\s
Run Code Online (Sandbox Code Playgroud)

我正在使用C#4.0(Asp.net正则表达式验证器),如果这很重要的话.

Joh*_*sch 7

根本不使用正则表达式可能更容易:

input.Where(c => !char.IsWhiteSpace(c)).Count() > 10
Run Code Online (Sandbox Code Playgroud)

如果空格不应该在中间,那么这将起作用:

(\s*(\S)\s*){10,}
Run Code Online (Sandbox Code Playgroud)

如果您不关心非空白字符之间的空格,则其他答案会涵盖该方案.