java - 这种情况的if条件该怎么写呢?

标签 java if-statement

我需要为密码字段设置一个错误,条件是“仅允许 2~22 个字符和符号 , _ -”。

但我有点卡在这里。

这是我到目前为止得到的:

if(
  !(editText.length() >= 2 && editText.length() <= 22 ) ||
    !(editText.contains("-") || editText.contains("_") || editText.contains(","))
  ) {
  //set error message
}

但问题是,如果我输入除 、 _ 或 - 之外的符号,错误消息仍然不显示。对于输入长度,错误消息按其应有的方式显示。

最佳答案

在java中,使用:

editText.matches("^[A-Za-z,_\\-]{2,22}$");

关于java - 这种情况的if条件该怎么写呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33139750/

相关文章:

android - 消除过多的 if 和 else 语句

java - 在Java中,获取元素的样式属性使用值或计算值

java - 为什么我的 Java 程序中无法导入文件?

excel - 如果条件为假,则将单元格留空

mysql - 如何检查记录不包含特定字符串?

jquery - 仅当窗口滚动位置等于 0 时才运行 jquery 代码

Javascript if else 大于范围 slider

java - 如何在 JVM 中查看 MaxPermSize?

java - Eclipse 没有看到 Maven 依赖项

java - 查看页面源代码与 HTTPURLConnection