C#中string的相关方法

时间:2023-03-09 06:00:25
C#中string的相关方法

下面的方法一般都有很多重载形式,作为初学者的我先把我用过的记录下来吧。。。以后用到其他的可以一点点添加;

直接上例子吧。先定义两个字符串str1,str2(不要吐槽命名==)

string str1,str2;

获取字符串的长度

int string.Length{get;};
 str1="012345abc";
Console.WriteLine(str1.Length); //output:9

转换大小写

 string string.ToUpper();//转大写
string string.ToLower();//转小写
str1 = "123abcABC一二三";
Console.WriteLine(str1.ToUpper());
Console.WriteLine(str1.ToLower()); //output:
123ABCABC一二三
123abcabc一二三

比较字符串

bool string.Equals(string);
bool Equals(object,object);
 str1 = "123ABC";
ste2 = "123abc"; Console.WriteLine(str1.Equals(str2));//返回false
Console.WriteLine(Equals(str1,str2));//返回false
Console.WriteLine(str1.Equals(str2,StringComparison.OrdinalIgnoreCase));//返回true
//其中,StringComparison.OrdinalIgnoreCase枚举,忽略大小写比较

分割字符串

 string[] string.Split(params char[]);
str1 = "123abc";
string[] newSte = str1.Split('a');
foreach( var item in newStr )
{
Console.WriteLine(item);
}
/*输出为:
123
bc
*/

因为参数类型有params修饰,所以Split()方法内部可以直接传入多个字符而不仅仅是字符数组,比如

str.Split('a','2');

那么他就会根据a和2分割成三段。

判断子串是否存在

bool string.Contains(string);

这个不多说

判断开头结尾,获取字串位置与截取符串

这四个666,结合起来用效果拔群

bool string.StartWith(string);//判断开头是不是输入的参数
bool string.EndWith(string);//判断结尾是不是传入参数
int string.IndexOf(string);//取子串第一次出现的位置
string string.SubString(int length);//截取子串
string string.SubString(int start,int lenhth);
 string str = "<sc>ascdsc";
if(str.StartsWith("<"))//如果开头是<
{
if (!str.EndsWith(">"))//如果结尾不是>
{
int n = str.IndexOf(">");
string ans = str.Substring(n + );
Console.WriteLine(ans);
}
}
//输出是:ascdsc