![]()
在C#中截取指定长度的中文字符串
![]() { Regex regex = new Regex("[/u4e00-/u9fa5]+", RegexOptions.Compiled); char[] stringChar = stringToSub.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; } if (nLength > length) break; } return sb.ToString(); } public static string SubComment(string original, int width) { int len = original.Length; if (len < width) return original; int clen = 0;//当前长度 int cwidth = 0;//当前宽度 while (clen < len && cwidth < width) { if ((int) original[clen] > 128) cwidth++; clen++; cwidth++; } return original.Substring(0, clen); } ![]() |
在C#中截取指定长度的中文字符串
最新推荐文章于 2023-11-14 16:43:35 发布