【问题标题】:Check if JTextField contains only letters or numbers检查 JTextField 是否仅包含字母或数字
【发布时间】:2014-04-02 05:02:53
【问题描述】:

我有一个 JTextField,用户可以在其中输入任何内容。检查 TextField.getText() 的字符串是否仅包含字母或数字的便捷方法是什么?基本上我只是想避免任何其他符号(例如_^$。等)

提前谢谢你

【问题讨论】:

    标签: java regex swing validation jtextfield


    【解决方案1】:

    您可以考虑使用String 方法matches,该方法将正则表达式作为参数并确定字符串是否与正则表达式匹配。例如,字母数字可以用正则表达式[a-zA-Z0-9]+ 表示,它匹配任何小写字母或大写字母或数字的模式至少1 次。

    考虑以下代码:

    String text = "axc";
    boolean match = text.matches("[a-zA-Z0-9]+");
    

    你可能想通过这个Java Tutorial on regular expressions

    【讨论】:

    • 这是一个解决方案;但是,由于该测试应该运行多次,因此最好从中创建一个 Pattern ;)
    【解决方案2】:

    试试这个 将您从文本字段中获得的值分配给变量“数据”.. 然后使用该正则表达式来知道它是否包含字母或数字而不是字符

        String regex = "[a-zA-Z0-9]+"; 
        String data = "5hekkqhwj57586";
        System.out.println(data.matches(regex));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-16
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      • 2016-04-19
      • 1970-01-01
      • 1970-01-01
      • 2014-06-21
      相关资源
      最近更新 更多