web-dev-qa-db-ja.com

文字列から最初の10文字を削除する方法は?

文字列の最初の10文字を無視する方法は?

入力:

str = "hello world!";

出力:

d!
78
csharper
str = "hello world!";
str.Substring(10, str.Length-10)

長さチェックを実行する必要があります。そうしないと、エラーがスローされます。

85
V4Vendetta

str = str.Remove(0,10);最初の10文字を削除します

または

str = str.Substring(10); 11文字目から文字列の末尾までの部分文字列を作成します。

あなたの目的のために、それらは同じように動作するはずです。

196
crlanglois

他の人が指摘したように、部分文字列はおそらくあなたが望むものです。しかし、ミックスに別のオプションを追加するだけです...

string result = string.Join(string.Empty, str.Skip(10));

これの長さをチェックする必要さえありません! :) 10文字未満の場合、空の文字列を取得します。

14
UrbanEsc

Substringには、2つのオーバーロードメソッドがあります。

public string Substring(int startIndex);//The substring starts at a specified character position and continues to the end of the string.

public string Substring(int startIndex, int length);//The substring starts at a specified character position and taking length no of character from the startIndex.

したがって、このシナリオでは、次のような最初の方法を使用できます。

var str = "hello world!";
str = str.Substring(10);

出力は次のとおりです。

d!

その長さをチェックすることにより、防御コーディングを適用できる場合。

7
Rousonur Jaman

Substringには、startIndexというパラメーターがあります。開始するインデックスに従って設定します。

5
Sascha

以下の行を使用してCharを削除できます。

:-最初の文字列に削除するのに十分な文字があることを確認する

   string temp="Hello Stack overflow";
   if(temp.Length>10)
   {
    string textIWant = temp.Remove(0, 10);
   }
2
Snack'Eyes

ために:

var str = "hello world!";

文字列の長さが10以下の場合、最初の10文字と空の文字列なしで結果の文字列を取得するには、次を使用できます。

var result = str.Length <= 10 ? "" : str.Substring(10);

または

var result = str.Length <= 10 ? "" : str.Remove(0, 10);

メソッドパラメータが1つしか必要ないため、最初のバリアントが優先されます。

メソッド Substring メソッドを使用できます。このメソッドは、単一のパラメーター(開始インデックス)を受け取ります。

以下の私のコードでは、長さが希望の開始インデックスよりも短く、長さがゼロの場合を扱います。

string s = "hello world!";
s = s.Substring(Math.Max(0, Math.Min(10, s.Length - 1)));
1
George Duckett

サブストリング方式を使用します。

string s = "hello world";
s=s.Substring(10, s.Length-10);
1
Ashley John

Substringメソッドに長さを指定する必要はありません。したがって:

string s = hello world;
string p = s.Substring(3);

pは次のようになります。

「lo world」。

ArgumentOutOfRangeExceptionがゼロ未満またはこのインスタンスの長さより大きい場合、対応する必要がある唯一の例外はstartIndexです。

0
alex leo