Java 联系人号码验证

Java 联系人号码验证,java,swing,validation,Java,Swing,Validation,我想验证contact no文本字段,以检查它是否包含数字。 我已经为KeyTyped编写了以下函数,但它不起作用。任何人都可以提供替代方案。提前感谢 代码:- private void tnoKeyTyped(java.awt.event.KeyEvent evt) { char c=evt.getKeyChar(); System.out.println("hi"); if(!(Character.isDigit(c)||(c==KeyEvent.VK_BACK_SP

我想验证contact no文本字段,以检查它是否包含数字。 我已经为KeyTyped编写了以下函数,但它不起作用。任何人都可以提供替代方案。提前感谢

代码:-

private void tnoKeyTyped(java.awt.event.KeyEvent evt)
{
    char c=evt.getKeyChar();
    System.out.println("hi");
    if(!(Character.isDigit(c)||(c==KeyEvent.VK_BACK_SPACE)||(c==KeyEvent.VK_DELETE)))
    {
        evt.consume();
    }
}
我想验证contact no文本字段,以检查它是否包含数字

您可以使用
InputVerifer
对字段进行后期验证,有关详细信息,请参阅

我已经为KeyTyped编写了以下函数,但它不起作用。有人能提供替代方案吗


您可以通过使用
DocumentListener
进行实时验证,有关更多详细信息,请参阅和正则表达式应执行以下操作:

char c = evt.getKeyChar();

//create a pattern that checks for digits and backspace
Pattern p = Pattern.compile("[0-9\\b]");  

//check if your character as a string matches the pattern
Matcher m = p.match("" + c);
boolean b = m.matches();

//I don't know if there is a regex equivilent for delete
if(!(b || c == KeyEvent.VK_DELETE) )  {
    evt.consume();
}

什么意思是它不工作,以及