c#字符串函数

只要涉及到改变字符串的,都需要重新赋值,原字符串不改变

1字符串指定位置获取

复制代码
string str = "shan";
Console.WriteLine(str[0]);
char[] chars = str.ToCharArray();
Console.WriteLine(chars[1]);

for(int i = 0; i < str.Length; i++)
{
    Console.WriteLine(str[i]);
}

字符串和字符数组的区别在于,字符串只有get属性,没有set属性。但字符数组可读可写。

2字符串拼接

cs 复制代码
 str = string.Format("{0}{1}",1, 3333);
 Console.WriteLine(str);

3正向查找字符串的位置

打印下标号,没找到默认-1

cs 复制代码
str = "I shan";
int index=str.IndexOf("s");

4反向查找指定字符串位置

cs 复制代码
index = str.LastIndexOf("s");

5移除指定位置后的字符

string的很多方法不会改变原来的字符串,需要给其一个赋值才能改变

传两个参数进行移除 从哪个位置开始移除几个字符

参数1 开始位置

参数2 字符个数

cs 复制代码
str = " 我是shan";
str.Remove(4);//没有改变
Console.WriteLine(str);
str = str.Remove(4);
Console.WriteLine(str);

str = str.Remove(1, 1);
Console.WriteLine(str);

6替换指定字符串

把前面的字符串替换成后面的字符串

cs 复制代码
str = "I am shan";
str=str.Replace("shan","shanfly");

7 大小写转换

cs 复制代码
str = "asdfgfgfg";
str=str.ToUpper();
str = str.ToLower();

8字符串截取

cs 复制代码
 str = "i am shan";
 str = str.Substring(2);//截取从指定位置开始之后的字符串
 str = str.Substring(2, 3);//从开始位置,截取指定个数的字符串

9字符串切割

Splitstring 类型的一个实例方法,用于根据一个或多个分隔符将字符串拆分成若干子字符串 ,返回一个 string[] 数组。

cs 复制代码
str = "1,2,3,4,5,6,7";
string[] strs = str.Split(",");
str = "";
for(int i = 0; i < strs.Length; i++)
{
    str+=int.Parse(strs[i]) + 1;
    if (i != strs.Length - 1) { str += "|"; }
}


str = "1|2|3|4|5|6|7";
string[] strss = str.Split("|");

str = "h|e|l|l|o";
string str1;
string[] strsss = str.Split("|");
相关推荐
不正经学生9 分钟前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技18 分钟前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
恋恋西风3 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx3 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_4 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_4 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu4 小时前
CSharp: 万年历
开发语言·后端·c#·.net
我找到地球的支点啦5 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
予昊5 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_461408585 小时前
Mybatis-flex小记
java·开发语言·mybatis