我的意思是这样的
" T"
这不是3个字符
"T T"
这不是3个字符
" T "
它不是。
"TTT"
这是真的
" TTT"
是真的
" TT T"
是真的
如何使用正则表达式检查
我正在尝试"^[\s]{3,100}$"
,但它无法正常工作
感谢。
答案 0 :(得分:1)
我假设您要测试至少三个非空白字符。在这种情况下,这种模式应该有效。
^\s*(\S\s*){3,100}$
[Test]
public void Test()
{
Regex pattern = new Regex(@"^\s*(\S\s*){3,100}$");
Assert.IsFalse(pattern.IsMatch(" T"));
Assert.IsFalse(pattern.IsMatch("T T"));
Assert.IsFalse(pattern.IsMatch(" TT"));
Assert.IsTrue(pattern.IsMatch("TTT"));
Assert.IsTrue(pattern.IsMatch(" TTT"));
}
您的问题中不清楚的是,是否允许使用空格,或者如果存在任何空白区域,则匹配失败。
答案 1 :(得分:0)
我想在Java中说因为我不熟悉asp.net(我很确定你在字符串上有长度和在asp.net中替换所有(正则表达式,替换)):
System.out.println(input.length() == input.replaceAll("\\s", "").length());
答案 2 :(得分:0)
您可以使用正则表达式/(\w)\1{2,}/
匹配任何字符,然后在JavaScript中使用两个或多个相同的字符:(您必须转换为ASP.NET)
a = [" T ", " T", "T ", "TTT", "TTAT"]
for(i=0;i<a.length;i++)
console.log(i, a[i], a[i].match(/(\w)\1{2,}/) != null)