如何在第一个分号后获得前4个字符的字符串

Ash*_*hok -6 c# string

我有一个字符串,我的要求是从我的字符串我应该得到第一个分号(;)的前4个字符.

我有下面的代码:

var str1 = Settings.Default.sConstr.ToString();
var str2 = Settings.Default.dConstr.ToString();
string name = //sub string of str1 + sub string of str2; 
Run Code Online (Sandbox Code Playgroud)

我们应该怎么做...?

Son*_*nül 8

你可以使用String.IndexOfString.SubString方法一样;

string s = "asdfghj;zxcvb";
var index = s.IndexOf(';');
Console.WriteLine(s.Substring(index -4, 4));
Run Code Online (Sandbox Code Playgroud)

输出将是;

fghj
Run Code Online (Sandbox Code Playgroud)

这里一个demonstration.

如果您在半柱后面看4个字符,可以像使用它一样使用它;

string s = "asdfghj;zxcvb";
var index = s.IndexOf(';');
Console.WriteLine(s.Substring(index + 1, 4));
Run Code Online (Sandbox Code Playgroud)

输出将是;

zxcv
Run Code Online (Sandbox Code Playgroud)

这里一个demonstration.

还检查你的字符串包含;字符,它有4个字符后;是一个很好的想法;

if(s.Contains(';') && (s.Length >= s.IndexOf(';') + 5))
{
 //Your code
}
Run Code Online (Sandbox Code Playgroud)