C# 如何获取字符串第一个分号后的前4个字符
我有一个字符串,我的要求是从字符串中获取第一个分号的前4个字符 我有以下代码:C# 如何获取字符串第一个分号后的前4个字符,c#,string,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; 我们如何做到这一点…?您可以使用以下方法: string s = "asdfghj;zxcvb"; var i
var str1 = Settings.Default.sConstr.ToString();
var str2 = Settings.Default.dConstr.ToString();
string name = //sub string of str1 + sub string of str2;
我们如何做到这一点…?您可以使用以下方法:
string s = "asdfghj;zxcvb";
var index = s.IndexOf(';');
Console.WriteLine(s.Substring(index -4, 4));
输出将是
fghj
zxcv
这里有一个
如果您在半列后面看4个字符,您可以像这样使用它
string s = "asdfghj;zxcvb";
var index = s.IndexOf(';');
Console.WriteLine(s.Substring(index + 1, 4));
输出将是
fghj
zxcv
这里有一个
还要检查字符串包含的内容;字符,后有4个字符;是一个好主意似的
if(s.Contains(';') && (s.Length >= s.IndexOf(';') + 5))
{
//Your code
}
或者,如果你想要4个字符后;然后用这个:
str1.Substring(str1.IndexOf(';') + 1, 4) + str2.Substring(str2.IndexOf(';') + 1, 4);
尝试:
可以使用“拆分”来执行此操作
var str1 = Settings.Default.sConstr.Split(';');
var str2 = Settings.Default.dConstr.Split(';');
string name = str1[1].Substring(0,4)+" "+str2[1].Substring(0,4);
希望它能起作用
string s = "asdfghj;zxcvb";
string result = s.Split(new char[]{';'})[1].Substring(0,4);
或:
试试这个
sConstr.Split(';')[1].Substring(0,4)
我认为前4个字符是指第一个分号后的前4个字符。@Grantwiney和Konrad Gadzina,你们可能是对的。更新了我的答案。谢谢您的警告。像这样的程序不能信任输入,您必须确保输入包含分号,并且下一个字符>=4个字符…@glautrou您有道理。根据您的建议进行更新。谢谢。我为您的回答添加了异常处理,这对于此类操作很重要。
sConstr.Split(';')[1].Substring(0,4)