我对验证昵称的方式有疑问:
preg_match("^[A-Za-z0-9]+$^", $nickname );
它工作正常,但有一个问题,我无法解决,是它允许空格和字母变体,如é,ç,< em>ñ我不想允许这些。我该如何解决?
答案 0 :(得分:3)
我认为你应该使用/^[A-Za-z0-9]+$/
。 ^
表示该行的开头,$
表示该行的结尾。通过将字符串包装在^
中,您正在制作正则表达式分隔符,而不是典型的/
。在这种情况下,^
会忽略它的开头意义。
编辑:更好的是/\A[A-Za-z0-9]+\z/
。这是一个微妙的修改。 ^
可以是行的开头或字符串的开头,但\A
始终是字符串的开头。同样地,$
可以是行的结尾或字符串的结尾,但\z
是字符串的结尾。因此,通过使用^
和$
,昵称可能包含换行符,但如果您使用\A
和\z
,则无法使用。{1}}和public override Task OnInitializeAsync(IActivatedEventArgs args)
{
Window.Current.Content = new Views.ShellNavBar();
return Task.CompletedTask;
}
。