/// <summary>
/// 获取字符串的总数(以英文字符为准,中文等字符按2英文字符计算)
/// </summary>
/// <param name="str">字符串</param>
/// <returns>返回字符串的总数</returns>
public int GetStringCount(string str)
{
Regex regex = new Regex("[/u4e00-/u9fa5]+", RegexOptions.Compiled);
char[] stringChar = str.ToCharArray();
StringBuilder sb = new StringBuilder();
int nLength = 0;
for(int i = 0; i < stringChar.Length; i++)
{
if (regex.IsMatch((stringChar[i]).ToString()))
{
sb.Append(stringChar[i]);
nLength += 2;
}
else
{
sb.Append(stringChar[i]);
nLength = nLength + 1;
}
}
return nLength;
}
/// 获取字符串的总数(以英文字符为准,中文等字符按2英文字符计算)
/// </summary>
/// <param name="str">字符串</param>
/// <returns>返回字符串的总数</returns>
public int GetStringCount(string str)
{
Regex regex = new Regex("[/u4e00-/u9fa5]+", RegexOptions.Compiled);
char[] stringChar = str.ToCharArray();
StringBuilder sb = new StringBuilder();
int nLength = 0;
for(int i = 0; i < stringChar.Length; i++)
{
if (regex.IsMatch((stringChar[i]).ToString()))
{
sb.Append(stringChar[i]);
nLength += 2;
}
else
{
sb.Append(stringChar[i]);
nLength = nLength + 1;
}
}
return nLength;
}