在注册过程中我想强制输入用户的名字和姓氏。为此,我需要写一个正则表达式。
我需要的是用户名应该接受任何字符串输入,但是以(1sdasd)或空字符串开头(例如按下此字段的空格,这会产生一个空字符串“”)
它的正则表达式是什么?
ps:它应该接受非拉丁字符,例如üÜğĞçÇöÖ(即r'^ \ w + $',不起作用)
由于
答案 0 :(得分:2)
您可以使用unicode flag编译模式:
pattern = re.compile(r"^[^\W\d]\w*$", re.UNICODE)
第一个字符由[^\W\d]
匹配,它无法匹配非字符字符的内容,并且无法匹配数字。其他所有内容都被接受(即不是数字的单词字符)。其余的可以是任何单词字符,包括数字。