java - 在java Android中检查字符串是否只包含数字和空格

标签 java android

我知道这是一种常见的询问方式,但我只想在检查数字时包含空格,所以我有这个字符串

6031 3100 3440 0189 000

所以现在我想检查该值是否只包含数字

我想出了这个解决方案

String Cardresult = edtCashCard.getText().toString();
if (Cardresult.matches("[0-9]+")){
   Toast.makeText(getApplicationContext(), "Good Job the strings are numbers", Toast.LENGTH_SHORT).show();

}
else{
   Toast.makeText(getApplicationContext(), "Error the string contains character", Toast.LENGTH_SHORT).show();
}

但现在我知道变量中有空格,并且基于第一个条件,即使您的变量包含数字,但由于有空格,它不会算作数字,而是算作字符串,现在我想考虑白色空格作为数字来触发第一个条件,我可以用它做些什么吗?这对我很有帮助

最佳答案

正如 @ADM 在评论中建议的那样,您可以使用以下内容更新您的正则表达式 [0-9]+

[0-9 ]+

所以看起来像

 String Cardresult = edtCashCard.getText().toString();
    if (Cardresult.matches("[0-9 ]+")){
       Toast.makeText(getApplicationContext(), "Good Job the strings are numbers", Toast.LENGTH_SHORT).show();
    
    }
    else{
       Toast.makeText(getApplicationContext(), "Error the string contains character", Toast.LENGTH_SHORT).show();
    }

关于java - 在java Android中检查字符串是否只包含数字和空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69113366/

相关文章:

java - 如何在不使用 System.console() 的情况下从控制台读取密码?

Java JDK 11 版本与 JavaFX 的兼容性

Android:在警告对话框中格式化字体

android - columnCount 必须大于或等于每个子项的 LayoutParams 中定义的所有网格索引(和跨度)的最大值

java - 接口(interface)的引用可以= null吗?

java - Bean shell脚本在Jmeter中执行后从文件中清除一行

java - 为什么hibernate为OneToMany映射生成插入和更新

java - Netty 中多种数据包类型的解码和编码

android - 多个 map View ?

android AlarmManager 没有唤醒手机