java 输入一个字符串,字符串中有用户名,密码,日期三个分量组成,用&&分开

date=2009/10/21

(4)转换日期格式为2009-10-21

请问java要实现这样的功能代码是怎么样的

问题解决的话,请点下采纳

Scanner scan = new Scanner(System.in);
String inputstr = scan.nextLine();
String[] arr = inputstr.split(" && ");
String name = arr[0];
String passwd = arr[1];
String datatime = arr[2];
if (!name.matches("^[a-zA-Z][a-zA-Z0-9]*$"))
System.out.println("姓名不合法");
if (!passwd.matches("[0-9]{6,20}"))
System.out.println("密码不合法");
datetime = datetime.replace('-', '/');
System.out.println(datetime);

(1) 假设字符串是str

String[] str1 = str.split("&&");
String name = str1[0].split()[0].equals("username=")?str1[0].split()[1]:null;
String passwd = str1[1].split()[0].equals("password=")?str1[0].split()[1]:null;
String datetime = str1[2].split()[0].equals("date=")?str1[0].split()[1]:null;
(2)

String reg = "^[a-zA-Z][a-zA-Z0-9]*$";
if (Pattern.matches(reg,name)){
        System.out.println("匹配");
}

(3)

String reg = "[0-9]{6,20}";
if (Pattern.matches(reg,name)){
        System.out.println("匹配");
}

(4)

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date(datetime);
System.out.println(simpleDateFormat.format(date));

这不给个赞 我觉得说不过去了。

package com.company;

import java.util.Date;

public class Main {

    public static void main(String[] args) {
        String str="username=chen && password=12345 && date=2009/10/21";
        String[] arr=str.split("&&");
        String name=arr[0].split("=")[1];
        String password=arr[1].split("=")[1];
        String date=arr[2].split("=")[1];


        //判断用户名是否满足规则
        boolean n= name.matches("^[a-zA-Z][a-zA-Z0-9]*$)");
        if (n==true)
        {
            //满足
        }
        //判断密码是否满足规则
        boolean p=password.matches("[0-9]{6,20})");
        //转换日期格式
        String time=date.replace("/","-");


    }
}