我的国家/地区名称中包含一些特殊字符。
所以,我编写了一个正则表达式来验证一个国家/地区名称,除JSONArray claims = c.getJSONArray(TAG_CLAIM);
,
.
'
{{1}之外,不得包含任何数字和特殊字符}} -
我在下面写了正则表达式
(
但它没有做到这一点。有人可以让我知道我做错了什么。
答案 0 :(得分:2)
如果您打算也允许使用撇号,只需将其添加到字符类:
@"^[a-zA-Z’\-'()/.,\s]+$"
^
请注意,如果它位于字符类的末尾,则不必转义-
,并且可以使用(?i)
不区分大小写的修饰符来缩短a-zA-Z
部分:< / p>
@"(?i)^[a-z’'()/.,\s-]+$"
C#:
string country = "COTE D’IVOIRE";
bool isValid = Regex.IsMatch(country.Trim(), @"(?i)^[a-z’'()/.,\s-]+$");
// or use RegexOptions.IgnoreCase option
//bool isValid = Regex.IsMatch(country.Trim(), @"^[a-z’'()/.,\s-]+$", RegexOptions.IgnoreCase);
答案 1 :(得分:2)
将’
添加到符号列表
string country = "COTE D’IVOIRE"
bool isValid = Regex.IsMatch(country.Trim(), @"^[a-zA-Z\-'’()/.,\s]+$");
答案 2 :(得分:1)