学习笔记——C#字符串删除字符

方法1:s = s.Substring(0,s.Length - 1);删除字符串最后一个字符 ;

s = s.Substring(0,s.Length - 1)

延伸:

 (1)String.Substring (Int32 index) :保留字符串下标index之后的子串;

eg:s.Substring(3);

为从s下标位置为3的字符开始,截取之后的字符子串,3表示截取子字符串的起始位;

s为:“asCded”;x为:“ded”;


(2)String.Substring (Int32 index1, Int32 index2) :保留从字符串下标index1的字符起,长度为index2的子串;

eg:string x=s.ubstring(3,2);

x为从s下标位置为3的字符开始,截取之长度为2的字符子串;

3表示截取子字符串的起始位置,2表示截取的子字符串的长度;

s为:“asCded”;x为:“de”;

方法2:s=s.Trim();删除头尾部的空格,遇到首个非空格的字符结束;

s=s.Trim();

延伸:

(1)String.Trim(char myChar):分别从字符串的前面和后面移除能匹配字符myChar字符的字符,直到遍历的第一个不匹配myChar字符集的字符,停止遍历移除操作;

Trim后面的括号内不填字符的话,默认移除空格字符。

eg:
y = s.Trim();
s为:“ 075 pop ”;x为:“075 pop”;

y = s.Trim('_');
s为:“_075 pop_”;x为:“075 pop”;

eg:
y = s.Trim();
s为:“ 075 pop ”;x为:“075 pop”;

y = s.Trim('_');
s为:“_075 pop_”;x为:“075 pop”;

(2)String.Trim(char[ ]  myChar):分别从字符串的前面和后面移除能匹配字符myChar字符集里的字符,直到遍历的第一个不匹配myChar字符集的字符,停止遍历移除操作;

eg:

char[] myChar= {'1','2','3','5','6','7','8','9','0'};//没有‘4’;

x =s.Trim(myChar);

s为:“238ase 075 pop uuu2416”;x为:“ase 075 pop uuu24”;

eg:

char[] myChar= {'1','2','3','5','6','7','8','9','0'};//没有‘4’;

x =s.Trim(myChar);

s为:“238ase 075 pop uuu2416”;x为:“ase 075 pop uuu24”;

char字符解释:

myChar是包含0-9,但不包括4的字符集合;

s.Trim(myChar);解释:

是从字符串s里从外到里(两头往中间)依次遍历字符串,遍历的字符符合mychar字符集则删去,直到遇到第一个不属于myChar字符集的字符,停止遍历删除操作。

过程解释:

1)从前面开始操作,‘2’,‘3’,‘8’,都在myChar字符集中,都能匹配上,这三个字符删去;

2)等遍历到‘a’这个字符,和myChar字符集里没有匹配的,这里停止操作。后面的字符也不再遍历;

3)同时,也从字符串的后面开始操作,‘6’,‘1’,能和myChar字符集里的字符匹配上,这两个字符删去。

4)等遍历到‘4’这个字符时,和myChar字符集里没有匹配的,从这里停止操作,再往前面的字符也不再遍历检查了。

5)故最后的结果为:“ase 075 pop uuu24”;

(3)String.TrimStart(char[ ]  myChar): 去掉字符串头部的字符

同Tirm(),括号内为空时,默认空格字符;

eg1:
y = s.TrimStart();
s为:“ 075 pop ”;x为:“075 pop ”;

eg2:

char[] myChar= {'1','2','3','5','6','7','8','9','0'};//没有‘4’;

x =s.TrimStart(myChar);

s为:“238ase 075 pop uuu2416”;x为:“ase 075 pop uuu2416”;

详细解释可参考上面的Trim();

(4)String.TrimEnd(char[ ] myChar):去掉字符串尾部的字符

同Tirm(),括号内为空时,默认空格字符;

eg1:
y = s.TrimEnd();
s为:“ 075 pop ”;x为:“ 075 pop”;

eg2:

char[] myChar= {'1','2','3','5','6','7','8','9','0'};//没有‘4’;

x =s.TrimEnd(myChar);

s为:“238ase 075 pop uuu2416”;x为:“238ase 075 pop uuu24”;

详细解释可参考上面的Trim()和TrimStart();

eg1:
y = s.TrimEnd();
s为:“ 075 pop ”;x为:“ 075 pop”;

eg2:

char[] myChar= {'1','2','3','5','6','7','8','9','0'};//没有‘4’;

x =s.TrimEnd(myChar);

s为:“238ase 075 pop uuu2416”;x为:“238ase 075 pop uuu24”;

方法3:s = s.Remove(s.Length-1,1);从字符串最后一位开始,移除一个字符。(即移除最后一个字符)

eg: p = s.Remove(s.Length - 1,1);

s 为"awxno";p为“awxn”

string s = "ab_eeK_";
p = s.Remove(s.Length - 1,1);

//p为:"ab_eeK";末尾的“_”给移除了;

延伸:

(1)string.Remove(Int32 beginIndex);

删除字符串里从beginIndex下标开始之后所有字符;(只保留字符串中beginIndex之前的字符);

Eg:

p = a.Remove(3);

a为:“123abscOpq”;p为:“123”;

p = a.Remove(3);

a为:“123abscOpq”;p为:“123”;

(2)string.Remove(Int32 beginIndex, Int32 length);

删除字符串beginIndex下标后length长度的字符; 

Eg:

p = a.Remove(3,2);

a为:“123abscOpq”;p为:“123scOpq”;

p = a.Remove(3,2);

a为:“123abscOpq”;p为:“123scOpq”;

猜你喜欢

转载自blog.csdn.net/weixin_43908355/article/details/125740015