如何创建需要4个字符且没有空格的正则表达式?

Mat*_*att 3 c# regex asp.net validation

我试图让用户输入正好4个字符,没有空格......这就是我所拥有的:

.[^\s]{4}
Run Code Online (Sandbox Code Playgroud)

但我输入的所有内容都表明它与正则表达式不符...

我哪里错了?

Vot*_*ple 14

为什么.前面有额外的?在您的"四个非空格"计算之前,这将匹配一个单独的字符.

您可能还希望将其绑定到字符串的开头和结尾,因此:

^[^\s]{4}$
Run Code Online (Sandbox Code Playgroud)


Kel*_*sey 10

你使它变得比它需要和使用更复杂\S,而不是\s你不匹配空格.我认为这对你有用:

^[\S]{4}$
Run Code Online (Sandbox Code Playgroud)

解决方案的定义:

^ - 以.开头

[/ S] - 首都'S'意味着没有空格

{4} - 匹配4次

$ - 结束字符串