利用正则表达式获取字符串中汉字的个数
string str =@"D:\文档\C#BASE\StringBuilder.md";
Regex regex = new Regex("^[\u4e00-\u9fa5]{0,}$");
int count = 0;
for(int i = 0; i < str.Length; i++)
{
count=regex.IsMatch(str[i].ToString())?++count:count;
}
Console.WriteLine(count);
注意这里的变量count使用的是++count而不是count++
++i
和i++
都是递增运算符,用于将变量的值增加1。
区别在于它们的前缀和后缀位置,以及它们返回的值。
++i先加再返回;i++先返回在加。
-
++i
是前缀递增运算符,它将变量的值增加1,并返回递增后的值。即先递增再使用。int i = 5; int result = ++i; Console.WriteLine(result); // 输出:6 Console.WriteLine(i); // 输出:6
在这个示例中,
++i
将变量i
的值增加1,然后将递增后的值赋给result
。最终result
和i
的值都是6。 -
i++
是后缀递增运算符,它也将变量的值增加1,但是返回的是递增前的值。即先使用再递增。int i = 5; int result = i++; Console.WriteLine(result); // 输出:5 Console.WriteLine(i); // 输出:6
在这个示例中,
i++
将变量i
的值赋给result
,然后将i
的值增加1。因此result
的值是递增前的值5,而i
的值是递增后的值6。
总结来说,++i
和i++
都会递增变量的值,但是它们的前缀和后缀位置以及返回的值是不同的。如果你只关心递增后的值,两者的效果是相同的。