正则表达式组合需求:匹配无空格且至少10字符的任意内容
解决正则规则合并的问题
嘿,我来帮你搞定这个正则合并的需求,完美匹配你要的所有校验规则!
先明确你的核心需求
- 内容长度至少10个字符,无上限
- 字符串里绝对不能包含空格
- 允许除空格外的所有字符(字母、数字、各种特殊符号都没问题)
修正原有正则的小问题
你之前写的两个正则其实有不符合需求的地方:
- 第一个正则
@"^[a-zA-Z0-9]{10,}$"只允许字母数字,限制了特殊字符,不符合你“允许所有非空格字符”的要求 - 第二个正则
^[^0-9 ]+$反而禁止了数字,这和你的需求冲突啦
最终合并后的正则表达式
直接用这个就能满足所有要求:
^[^ ]{10,}$
如果你的场景需要禁止所有空白字符(包括制表符、换行符这类),可以把[^ ]换成[^\\s],也就是:
^[^\\s]{10,}$
正则规则拆解解释
^:匹配字符串的起始位置[^ ]:匹配除了普通空格之外的任意单个字符(换成[^\\s]就是匹配所有非空白字符){10,}:要求前面的匹配项至少出现10次,确保总长度≥10$:匹配字符串的结束位置
这样整个正则就会严格校验:从开头到结尾的每一个字符都不是空格,同时总长度最少10个字符,完全符合你的所有要求!
内容的提问来源于stack exchange,提问作者user2645738
相关产品推荐
相关产品推荐

