我有一个正则表达式:
return Regex.IsMatch(_customer.FirstName, @"^[A-Za-z][A-Za-z0-9@#%&\'\-\s\.\,*]*$");
现在,一些客户对他们的姓氏或名字中的元音进行了fada,如下所示: Brendán
注意:在一个你可以通过按住得到发达alt,ctrl然后按a.
我已经尝试将这些字符添加到正则表达式中,但是当程序尝试编译时出现错误.
我可以允许用户输入具有fada的这种字符的唯一方法是完全删除正则表达式,这意味着用户可以输入他们想要的任何内容.
有没有办法使用上面的表达式,并以某种方式允许以下字符?
á é í ó ú
hwnd.. 14
仅供参考,您不需要',.
在角色类中转义上述内容[]
,并且可以-
通过将其放置在角色类的开头或结尾来避免逃脱破折号.
您可以使用\p{L}
哪种匹配来自任何语言的任何类型的字母.请参阅以下示例:
string[] names = { "Brendán", "Jóhn", "Jason" }; Regex rgx = new Regex(@"^\p{L}+$"); foreach (string name in names) Console.WriteLine("{0} {1} a valid name.", name, rgx.IsMatch(name) ? "is" : "is not"); // Brendán is a valid name. // Jóhn is a valid name. // Jason is a valid name.
或者只是将所需的字符添加到[]
要包含的角色类中.
@"^[a-zA-Z0-9áéíóú@#%&',.\s-]+$"
AFrieze.. 8
尝试合并\p{L}
将匹配unicode"字母".所以a
,á
应该匹配\p{L}
.
祝好运!
尝试合并\p{L}
将匹配unicode"字母".所以a
,á
应该匹配\p{L}
.
祝好运!
仅供参考,您不需要',.
在角色类中转义上述内容[]
,并且可以-
通过将其放置在角色类的开头或结尾来避免逃脱破折号.
您可以使用\p{L}
哪种匹配来自任何语言的任何类型的字母.请参阅以下示例:
string[] names = { "Brendán", "Jóhn", "Jason" }; Regex rgx = new Regex(@"^\p{L}+$"); foreach (string name in names) Console.WriteLine("{0} {1} a valid name.", name, rgx.IsMatch(name) ? "is" : "is not"); // Brendán is a valid name. // Jóhn is a valid name. // Jason is a valid name.
或者只是将所需的字符添加到[]
要包含的角色类中.
@"^[a-zA-Z0-9áéíóú@#%&',.\s-]+$"