使用正则表达式验证用户输入

Mis*_*nes 5 python python-3.x

我希望能够验证用户是否在我的程序中输入了有效的名称。如果他们没有输入有效的姓名,我希望程序继续提示他们再次输入姓名。如果输入的名称有效,我希望程序向用户打招呼。

到目前为止我有:

import re

user_name = input("Please enter your name: ")
if not re.match("^[A-Za-z]*$", user_name):
    print ("Error! Make sure you only use letters in your name")
else:
    print("Hello "+ user_name)
Run Code Online (Sandbox Code Playgroud)

如果他们的名字无效,我将如何循环这个?

Tom*_*Tom 2

user_name = '1'  #something that doesn't validate
while not re.match("^[A-Za-z]*$", user_name):
    user_name = input("Please enter your name: ")
    print ("Error! Make sure you only use letters in your name")
else:
    print("Hello! "+ user_name)
Run Code Online (Sandbox Code Playgroud)