我有一个字符串,可能需要也可能不需要截断。我将两个非负整数作为参数传递给我的程序。第一个应该告诉程序需要从字符串的开头删除多少个字符,第二个告诉它从末尾删除多少个字符。有没有办法做到这一点,以便零作为输入正常工作,代码的含义是不言而喻的,并没有像if (removefirst != 0)
这样的愚蠢的条件语句。
string.Remove(0, removefirst)
需要条件语句,因为第一个参数需要严格小于第二个参数,异常消息说。有没有办法更好地做到这一点?
答案 0 :(得分:7)
Math + use Substring()?
var result = str.Substring(firstNumber, str.Length - (firstNumber + secondNumber));
string yourstring = "asdf";
string result;
int firstNumber = 0;
int secondNumber = 0;
Console.WriteLine(yourstring);
result = yourstring.Substring(firstNumber, yourstring.Length - (firstNumber+secondNumber));
Console.WriteLine(result);
firstNumber = 1;
secondNumber = 1;
result = yourstring.Substring(firstNumber, yourstring.Length - (firstNumber+secondNumber));
Console.WriteLine(result);
结果
ASDF
ASDF
SD