在我的 Web 应用程序中,我有一个文本框,用户应该在其中输入 5 到 200 个字符的字符。
问题是 - 当用户连续输入 5 个空格并保存条目时,它会成功保存。
我应该阻止用户连续输入“空格”(或单独输入空格)。
但我可以允许单个空格(如“客户表”、“客户表”)。
但我可以允许用户输入带有字符的空格。另外我不希望名称以空格开头。
任何人都可以帮我获得上述条件的正则表达式吗?
^\S+(\s\S+)*$
这个正则表达式应该做你想做的事。它接受以非空白字符开头和结尾的非空字符串,并且单词之间只有一个空格。
您应该单独检查总字符串长度。
请注意,您需要在 Java 中转义 \。
全部替换"\\s{2,}"
为" "
,然后全部替换"^\\s+|\\s+$"
为""
(或者如果找到,则搜索并拒绝,具体取决于您的逻辑)。
以空格开头或包含超过 2 个连续空格:
^\s|\s{2,}
我建议您创建两个模式一个^\s
和另一个\s{2,}
,如果其中一个匹配然后拒绝字符串或者{2,}
如果您想禁止空格和换行符匹配在一起,但您不应该在那里有一个新行。