整理了一些C# 常用字符串操作string.Spilt、string.SubString、string.Trim用法,在平常开发过程中我们分割字符串、移除字符串都是通过单个字符来判定界限的,就拿string.Spilt方法来说。如果我想根据多个字符拆分成字符串数组,该怎么做呢?
string.Spilt
c#中按单个字符分割字符串为数组
单字符分割数组
string src_str1 = "a,b,c,d";
//单字符分割数组
string[] arr1 = src_str1.Split(',');
foreach (var item in arr1)
{
Console.WriteLine(item);
}
多字符分割数组
上面的spilt字符串分割结果是以一个指定的字符进行分割的。下面我们使用另一种方法根据多个字符进行字符串分割。
string src_str2 = "aa1xbb1xcc1xdd1xee";
//多字符分割数组
string[] arr2 = src_str2.Split(new char[2] { '1', 'x' });
foreach (var item in arr2)
{
Console.WriteLine(item);
}
Console.ReadLine();
string.Substring
c#中根据字符串长度截取特定字符串区间
//原始字符串
string oriString = "hicisharp";
//从第一个字符开始,截取2个字符,输出:hi
var s1 = oriString.Substring(0, 2);
Console.WriteLine(s1);
//从第一个‘i'开始,截取2个字符,输出:ci
var s2 = oriString.Substring(2, 2);
Console.WriteLine(s2);
//从第4个字符开始截取,到原始字符串结束,输出:sharp
var s3 = oriString.Substring(5);
Console.WriteLine(s3);
string.Trim
c#移除在字符串开头和结尾特定中的字符,也可以仅移除开头或结尾中特定的字符。
string src_str1 = "x`112233669611`211x`";
//去除字符串前后的x字符
var s1 = src_str1.Trim('x');
//去除字符串前后的x`字符
var s2 = src_str1.Trim(new char[2] { 'x', '`' });
//去除字符串前面的x字符
var s3 = src_str1.TrimStart('x');
//去除字符串前面的x`字符
var s4 = src_str1.TrimStart(new char[2] { 'x', '`' });
//去除字符串后面的`字符
var s5 = src_str1.TrimEnd('`');
//去除字符串后面的x`字符
var s6 = src_str1.TrimEnd(new char[2] { 'x', '`' });
Console.ReadLine();
string.StartsWith
c#在字符串开头匹配特定的字符串,返回true、false,该值指示指定的子串是否出现在字符串首位。
string src_str1 = "x`112233669611`211x`";
if (src_str1.StartsWith("x`"))
{
Console.WriteLine("字符串开头匹配到了x`字符。");
}
if (src_str1.EndsWith("x`"))
{
Console.WriteLine("字符串末尾匹配到了x`字符。");
}
string.Contains
c#在字符串中匹配特定的字符串,返回true、false,该值指示指定的子串是否出现在此字符串中。
string src_str1 = "x`112233669611`211x`";
if (src_str1.Contains("3"))
{
Console.WriteLine("整个字符串中匹配到了3字符。");
}