gpt4 book ai didi

java - 检查屏幕名称是否只有一个连字符/下划线

转载 作者:行者123 更新时间:2023-12-04 05:42:34 27 4
gpt4 key购买 nike

我需要验证用户的屏幕名称以确保它不能有 多个连字符或下划线 我不希望人们的网名全是标点符号。

这是我到目前为止的验证:

public boolean validateScreenName(String screenName) {
// Check screen name has > 0 chars and that it contains only a-z, A-Z, _ and -
boolean validated = false;

if (screenName.matches("[a-zA-Z0-9_-]{1,20}")
&& (! screenName.equals(""))
&& (! screenName.contains("\\s"))) {
validated = true;
} else {
validated = false;
}
return validated;
}

我想添加无多个连字符/下划线验证作为另一个 if 条件可能是 RegEx 的形式吗?

最佳答案

你可以使用:

screenName.matches("^(?=[^_-]*[_-]?[^_-]*$)[a-zA-Z0-9_-]{1,20}$")

其他条件是不需要的,它们是多余的。

关于java - 检查屏幕名称是否只有一个连字符/下划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11098104/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com