结合字母和数字

时间:2016-05-19 12:42:01

标签: java

你好我想要组合字母和数字。我希望这个字符串是7长度。我的意思是创建例如AWE3133。它有3个字母和4个数字。它不允许有2222ARM或1A3M02A。字母和数字后面。我使用类UserInput来创建这个我试试这个:

public class wom{
static int user;
 public static void Sixdas(){
             System.out.println("Write");
               user=UserInput.getString();
    String test =user;
    for(int i=0; i<test.length(); i++) {

      if("ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".indexOf(test.charAt(i))>-1){ 

        System.out.println("True: " + test.substring(i, i+1)); 
      }else{
       System.out.println("False: " + test.substring(i, i+1));         
      }
    }
  }

4 个答案:

答案 0 :(得分:3)

使用正则表达式怎么样?这样的事情:[A-Z]{3}[0-9]{4}

答案 1 :(得分:1)

只是为了给你一个想法:

public static final Pattern REGEX = Pattern.compile("^[A-Z]{3}\\d{4}$");
// or use [0-9] instead of \\d

public static void main(String[] args) throws Exception {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    System.out.println("Enter String");
    String input = br.readLine();

    if (REGEX.matcher(input).matches()) {
        System.out.println("True");
    } else {
        System.out.println("False");
    }
}

答案 2 :(得分:0)

  1. 编写一种生成随机字母的方法。
  2. 声明一个空字符串。
  3. 编写一个循环以添加三个随机字母并将其附加到字符串。
  4. 写另一个循环以添加三个随机数。

答案 3 :(得分:0)

发布完整的java代码以检查java中的正则表达式:

Pattern p = Pattern.compile("^[A-Z]{3}[0-9]{4}$");
Matcher m = p.matcher(stringToTest);
if(m.matches())
{
     //stringToTest is ok
}