//^代表否定,匹配除了数字、字母、下划线的特殊字符。
private static final String SPECIAL_CHAR_PATTERN = "[^a-zA-Z0-9_]"; 
Pattern pattern = Pattern.compile(SPECIAL_CHAR_PATTERN);
Matcher matcher = pattern.matcher(userAccount);
// 如果 find() 返回 true,说明包含特殊字符
if (matcher.find()) {
    return -1;  // 包含特殊字符,返回 -1
}

更多推荐