根据 String 和 Int 检查用户输入的字符串

Check user entered string against String and Int

我正在尝试接受 jTextArea(搜索框)形式的用户字段。然后获取此文本并将其与 ID OR Name 和 return(如果它在任何内部)进行比较。

基本上是根据字符串和整数检查用户输入。

我得到了以下信息,但是我收到了 NumberFormatException。

String name = "Window";
int id = 12;
if (name.contains(searchText.getText().toLowerCase()) || id == Integer.valueOf(searchText.getText().replaceAll("[^0-9]", ""))) {
                    // TRUE STATEMENT
                }

因此,如果用户输入 "Win",它将 return 为真。如果他们输入 "test",它将 return 为假。但是,如果他们输入“1”、“2”或“12”,它将 return 为真,因为 ID 包含这些。

我想我想多了,需要一些帮助。 提前致谢

 if (name.toLowerCase().contains(searchText.getText()) 
                    || Integer.toString(id).contains(searchText.getText())) {
                System.out.println("TRUE");
             }