您的位置:首页 > 编程语言 > C#

C#匹配中文字符串的4种正则表达式

2017-12-13 15:07 459 查看
在C#中,匹配中文的正则表达式用Unicode来表示时,范围是: [\u4e00-\u9fa5]。所以,在此基础上,我们可以得到如下一些正则表达式。

1、匹配字符串全部是中文字符的正则表达式

代码如下:
"^[\u4e00-\u9fa5]+$"

说明:“^”表示字符串开头,“$”表示字符串结束,“[\u4e00-\u9fa5]+”表示一个或多个中文字符。

2、匹配字符串中包含中文字符的正则表达式

代码如下:
"[\u4e00-\u9fa5]"

说明:本例中只要求判断字符串中是否出现中文,所以不需要字符串头和尾,只要在整个字符串中有中文就可以被匹配到。

3、匹配字符串中以中文字符开头的正则表达式

代码如下:
"^[\u4e00-\u9fa5]"

说明:在正则表达式的最前面加一个“^”,再紧跟一个中文字符,即可匹配以中文字符开头的字符串。

4、匹配字符串中以中文字符结尾的正则表达式

代码如下:
"[\u4e00-\u9fa5]$"

说明:在正则表达式的最后面加一个“$”,在此之前加一个中文字符,即可匹配以中文字符结尾的字符串。

1 string[] RegexNumber = {
2                                     @"\d+.",
3                                     @"\(\d{4}.+",
4                                     @"\(\?\)",
5                                     @"[\u4e00-\u9fa5]+$"
6                                    };
7             for (int j = 0; j < RegexNumber.Length; j++)
8             {
9                 if (Regex.IsMatch(name, RegexNumber[j], RegexOptions.IgnoreCase))
10                 {
11                     Match match = Regex.Match(name, RegexNumber[j], RegexOptions.IgnoreCase);
12                     Name = name.Replace(match.Value, "");
13                     name = Name;
14                 }
15             }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: