C# c中特殊字符的正则表达式#
我有以下国家名称,其中包含一些特殊字符C# c中特殊字符的正则表达式#,c#,regex,C#,Regex,我有以下国家名称,其中包含一些特殊字符 刚果,DEM。代表 科特迪瓦 几内亚比绍 大韩民国(韩国) 因此,我编写了一个正则表达式来验证除了,-()之外,国家名称不能包含任何数字和特殊字符 我写在正则表达式下面 string country = "COTE D’IVOIRE" bool isValid = Regex.IsMatch(country.Trim(), @"^[a-zA-Z\-'()/.,\s]+$"); 但它只是不做这件事。有人能告诉我我做错了什么吗。如果您计划也允许使用卷曲撇号,
,
-(
)
之外,国家名称不能包含任何数字和特殊字符
我写在正则表达式下面
string country = "COTE D’IVOIRE"
bool isValid = Regex.IsMatch(country.Trim(), @"^[a-zA-Z\-'()/.,\s]+$");
但它只是不做这件事。有人能告诉我我做错了什么吗。如果您计划也允许使用卷曲撇号,只需将其添加到角色类:
@"^[a-zA-Z’\-'()/.,\s]+$"
^
请注意,如果它位于字符类的末尾,则不必转义-
,您可以使用(?i)
不区分大小写的修饰符来缩短a-zA-Z
部分:
@"(?i)^[a-z’'()/.,\s-]+$"
C#:
将
添加到符号列表中
string country = "COTE D’IVOIRE"
bool isValid = Regex.IsMatch(country.Trim(), @"^[a-zA-Z\-'’()/.,\s]+$");
尝试以下模式:
^[a-zA-Z\-–'’()\/.,\s]+$
卷曲撇号,它不在字符类中。我不认为'
和'
是一样的symbol@w.b:否,圆点在字符类中被视为文字。
^[a-zA-Z\-–'’()\/.,\s]+$