如何检查字符串是否包含X个字母和Y个数字?

时间:2015-11-27 21:45:39

标签: java string

我正在开发一个用户将插入车辆ID的应用程序。

在我们国家/地区,ID始终为3个字母和4个数字。

如何检查String是否在Java中有X个数字和Y个字母?

3 个答案:

答案 0 :(得分:3)

您可以简单地使用正则表达式。类似的东西:

if(vehicleId.matches("^[A-Z]{3}\d{4}$"))

(假设id包含三个大写字母后跟四位数字。)

如果vehicleId(假定是保存用户输入的变量)匹配,则会返回一个布尔值。

答案 1 :(得分:1)

这个问题有很多解决方案。我不会给你一个完整的解决方案,但会尽力指导你。

一种解决方案是迭代字符串char-by-char。 Character类包含许多用于此任务的有用方法。

其他解决方案是使用带有空字符串的正则表达式和replaceAll非数字字符(\D)。从这里到答案的方式很短。

访问String API和regex教程,为您的创意火上浇油。

答案 2 :(得分:-2)

void AnalyzeString(String input)
{

int size= input.length();
int digitsCount=0;
int nonDigitsCount=0;

     for(int i =0; i<size; i++)
     {

        char ch = input.charAt(i);
         if(Character.isDigit(ch)) digitsCount++;
          else nonDigitsCount++;
      }

       System.out.println(digitsCount + " digits and " + nonDigitsCount +
                    " non digits were found in string");

} 
相关问题