要解决不能选择包含数字的“schema”的名称的问题,可以使用正则表达式来验证用户输入的名称是否符合要求。以下是一个示例代码:
import re
def validate_schema_name(name):
pattern = r'^[a-zA-Z_][a-zA-Z0-9_]*$' # 只允许字母、下划线作为开头,后面可以包含字母、数字、下划线
if re.match(pattern, name):
return True
else:
return False
# 示例用法
schema_name = input("请输入schema的名称:")
if validate_schema_name(schema_name):
print("输入的名称符合要求")
else:
print("输入的名称不符合要求")
上述代码中,使用了正则表达式的re.match()
函数来检查输入的名称是否与指定的模式匹配。模式^[a-zA-Z_][a-zA-Z0-9_]*$
表示名称应以字母或下划线开头,并且后面可以包含字母、数字和下划线。如果匹配成功,则返回True,否则返回False。您可以根据具体需求调整正则表达式的模式。