我怎么不String.Remove什么?

时间:2016-03-27 22:51:03

标签: c# string

我有一个字符串,可能需要也可能不需要截断。我将两个非负整数作为参数传递给我的程序。第一个应该告诉程序需要从字符串的开头删除多少个字符,第二个告诉它从末尾删除多少个字符。有没有办法做到这一点,以便零作为输入正常工作,代码的含义是不言而喻的,并没有像if (removefirst != 0)这样的愚蠢的条件语句。

string.Remove(0, removefirst)需要条件语句,因为第一个参数需要严格小于第二个参数,异常消息说。有没有办法更好地做到这一点?

1 个答案:

答案 0 :(得分:7)

Math + use Substring()?

var result = str.Substring(firstNumber, str.Length - (firstNumber + secondNumber));

DotNetFiddle Example

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