さて、私はこのようなものを持っています:
String str = "Have.Fun.Something";
String str2 = "asd.sad.saw.sa.Something";
そして、最後の文字から最初の「」まですべてのものを削除したいと思います。したがって、出力は常に
何か
さて、私はこのようなものを持っています:
String str = "Have.Fun.Something";
String str2 = "asd.sad.saw.sa.Something";
そして、最後の文字から最初の「」まですべてのものを削除したいと思います。したがって、出力は常に
何か
これはどう:
str.Split('.').Last();
あなたはこれを使うことができます
str = str.Substring(str.LastIndexOf('.')+1);
文字列のインスタンスには、たくさんの便利なメソッドがあります。あなたが見るのに最適な場所はMSDNです。
特定のケースでは、substringとlastindexofを使用できます。ケースがもっと複雑な場合は、おそらくもっと複雑ですが、正規表現をお勧めします。
String str2 = str.SubString(str.LastIndexOf('.') + 1);
あなたはこのように以下の分割機能を使用することができます:
String str = "Have.Fun.Something";
String str2 = "asd.sad.saw.sa.Something";
string[] Words= str.Split('.');
MessageBox.Show(Words[Words.Length-1].tostring());
このように以下を取得
何か
文字列と同じstr2="asd.sad.saw.sa.Something"; ありがとう..!
正規表現(regex)を使用できます。
(?:.*)\.(?<myGroup>.*)
上記の正規表現を適用すると、最後のドットの後の値を持つ「myGroup」という名前のグループが作成されます
個人的には、必要に応じてスケーラビリティが向上するため、このオプションが気に入っています。
正規表現についてさらにサポートが必要な場合は、そのように言ってください
バグのないアプローチ
public static string Substring(string input)
{
if (!String.IsNullOrEmpty(input))
{
int lastIndex = input.LastIndexOf('.');
if (lastIndex != -1)
return input.Substring(lastIndex + 1);
}
return input;
}