C#截取字符串


    public class SubStrHelper
{
/// <summary>
/// 截取字符串长度,中文二字节
/// </summary>
/// <param name="str"></param>
/// <param name="length">字节长度</param>
/// <returns></returns>
public static string GetSubString(string str, int byteLength, string moreTag = "...")
{
string temp = str;
int j = 0;
int k = 0;
for (int i = 0; i < temp.Length; i++)
{
// if (Regex.IsMatch(temp.Substring(i, 1), @"[\u4e00-\u9fa5]+")) //匹配中文
if (Regex.IsMatch(temp.Substring(i, 1), @"[^\x00-\xff]+")) //匹配双字节字符(包括中文)
{
j += 2;
}
else
{
j += 1;
}
if (j <= byteLength)
{
k += 1;
}
if (j > byteLength)
{
return string.Format("{0}{1}", temp.Substring(0, k), moreTag);
}
}
return temp;
}
}

C#截取字符串,布布扣,bubuko.com

时间: 2024-10-29 19:11:51

C#截取字符串的相关文章

js常用的4种截取字符串方法

平常经常把这几个api的参数记混了,于是打算记录下来,当不确定的时候在拿出来翻翻: 在做项目的时候,经常会需要截取字符串,所以常用的方法有slice().substr().substring().match()方法等,四个方法的使用如下所示: 1 <script type="text/javascript"> 2 // 截取字符串的方法 3 //注意1.字符串的截取都是从左向右,不会有从右向左截取:2.slice与substring方法,截取返回的字符串包含numStart

面试题之java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况

题目:10. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”. 一.需要分析 1.输入为一个字符串和字节数,输出为按字节截取的字符串-------------->按照字节[byte]截取操作字符串,先将String转换成byte类型 .2.汉字不可以截半----------------------------------

JS简单应用之截取字符串函数以及replace,split函数

JS截取字符串:slice(),substring()和substr()1.substr 方法返回一个从指定位置开始的指定长度的子字符串.stringvar.substr(start [, length ])参数stringvar必选项.要提取子字符串的字符串文字或 String 对象.start必选项.所需的子字符串的起始位置.字符串中的第一个字符的索引为 0.length可选项.在返回的子字符串中应包括的字符个数.说明如果 length 为 0 或负数,将返回一个空字符串.如果没有指定该参数

Java机试题目_怎样截取字符串

面试题1  怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串.但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个". 试题分析 本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这

截取字符串空格

----截取字符串左侧空格 ---- ltrim(表达式) select LTRIM(FName),Fname from T_Personselect LEN(   123),LTRIM(   123) ----截取字符串右侧空格---- rtrim(表达式) select LEN(   123),rtrim(123   )

js如何截取字符串右边指定长度的字符

js如何截取字符串右边指定长度的字符:通常情况下都从字符串的左边开始截取字符串,下面介绍一下如何从字符串的右边截取字符串.代码如下: String.prototype.right=function(length_) { var _from=this.length-length_; if(_from<0) _from=0; return this.substring(this.length - length_,this.length); } var str="antzone"; c

文章生成器,Split方法截取字符串。从硬盘读取文件,和向硬盘存储文件参考代码

string x, y; private void button2_Click(object sender, EventArgs e) { textBox2.Clear(); if (button4.Enabled == false) { string[] shuzu = y.Split(new char[]{'.'}); //用split方法截取字符串 string news = ""; // 将截取字符串后的语句打乱顺序 for (int i = 0; i < shuzu.L

Js自动截取字符串长度,添加省略号“……”

JavaScript字符串处理函数,根据定义的长度截取字符串,超出部分裁掉追加……,很多时候网页上显示的内容需要缩成“...”该方法用于处理字符串显示固定长度,超长部分用“...”代替: /**参数说明: * 根据长度截取先使用字符串,超长部分追加… * str 对象字符串 * len 目标字节长度 * 返回值: 处理结果字符串 */ function cutString(str, len) { //length属性读出来的汉字长度为1 if(str.length*2 <= len) { ret

thinkphp内置截取字符串函数无法显示省略号解决方法

thinkphp内置截取字符串函数无法显示省略号解决方法 functions.php function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true){ if(function_exists("mb_substr")) {      if($suffix)    {         if($str==mb_substr($str, $start, $length, $charset))