编程实现该功能,程序运行时输入注册的用户名、密码、确认密码和邮箱,如果输入信息符合要求,则提示注册成功,否则显示相应的错误提示信息

题目要求:
新浪微博在用户注册时,要求用户名不得少于5个字符,密码不得少于6个字符,且两次输入的密码必须一致,注册邮箱有效。
请编程实现该功能,程序运行时输入注册的用户名、密码、确认密码和邮箱,如果输入信息符合要求,则提示注册成功,否则显示相应的错误提示信息(如用户名少于5个字符、输入的两次密码不一致等等)。
注:注册邮箱是否有效,可以通过发送激活邮件来完成,目前我们还做不到这一点,暂时先检查邮箱名是否正确。
简单的判断规则:(1)至少包含符号‘@’和‘.’,(2)‘@’在‘.’之前,(3)‘@’不是第一个字符,‘.’不是最后一个字符。

解题思路:利用正则表达式和循环实现,符合注册要求就跳出循环,不符合则一直循环输入,直到符合要求。
代码如下:

package JavaTest;
import java.util.*;
import java.util.regex.*;
public class StringTest_2 {
	static String user,password_1,password_2,mail;
	static boolean flag=true;
	static String regex_1="(.*)(\\@.+\\.)(.*)";//测试邮箱格式是否匹配的正则表达式
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Scanner scanner=new Scanner(System.in);
		while(flag) {
			System.out.println("请输入你要注册的用户名:");
			user=scanner.nextLine();
			
		if(user.length()>=5) {
			System.out.println("你设置的用户名符合要求,请继续下一步!");
			break;
		}
		else {
			System.out.println("你设置的用户名不符合要求,请重新设置!");
			
		}
		}
		while(flag) {
			System.out.println("请输入你要注册的密码(第一遍)");
			password_1=scanner.nextLine();
			System.out.println("请输入你要注册的密码(第二遍)");
			password_2=scanner.nextLine();
			if(password_1.equals(password_2)) {
				//设置的密码长度要大于6
				if(password_1.length()>=6) {
					System.out.println("密码设置成功,请继续下一步.");
					break;
				}
				else {
					System.out.println("密码长度不够,请重新输入。");
					
				}
			}
			else {
				System.out.println("两边密码输入不一致,请重新输入!");
				
			}
			}
	
		
		while(flag) {
			System.out.println("请输入你要注册的邮箱:");
			mail=scanner.nextLine();
			Pattern r=Pattern.compile(regex_1);
			Matcher m=r.matcher(mail);
		if(m.find()) {
			System.out.println("邮箱格式正确,恭喜你,注册成功,快去开始新浪生活吧!");
			break;
		}
		else {
			System.out.println("邮箱格式有误,请重新输入!");
		
		}
	}
		
		
		}
		}
		


运行结果如下:
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你解答这个问题。首先,你需要安装 Python 和 tkinter 库。在安装完成后,你可以用以下代码实现用户注册功能: ```python import tkinter as tk import re def validate(username, password): if not username or not re.match("^(?=.*[a-zA-Z])(?=.*\d)[a-zA-Z\d]+$", username): return False if not password: return False return True def register(): username = username_entry.get() password = password_entry.get() if validate(username, password): # 注册成功 print("注册成功") else: # 注册失败 print("注册失败") root = tk.Tk() root.title("用户注册") tk.Label(root, text="用户名:").grid(row=0, column=0) username_entry = tk.Entry(root) username_entry.grid(row=0, column=1) tk.Label(root, text="密码:").grid(row=1, column=0) password_entry = tk.Entry(root, show="*") password_entry.grid(row=1, column=1) register_button = tk.Button(root, text="注册", command=register) register_button.grid(row=2, column=0, columnspan=2) root.mainloop() ``` 在这个程序中,我们定义了一个 `validate` 函数,用于校验用户名密码是否符合要求。其中,用户名不能为空且必须同包含数字和字母,密码不能为空。如果校验通过,则输出“注册成功”,否则输出“注册失败”。 在界面上,我们使用 `tk.Label` 和 `tk.Entry` 分别创建了两个输入框,用于输入用户名密码。我们还使用 `tk.Button` 创建了一个“注册”按钮,点击该按钮会调用 `register` 函数进行注册操作。 当你运行这个程序,会弹出一个窗口,你可以在窗口中输入用户名密码进行注册。如果符合校验规则,则会输出“注册成功”,否则会输出“注册失败”。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值