C#でDASHとBRACKETの間のすべての文字を取得するにはどうすればよいですか?
文字列 x = "PU - XX (AYT)"
XXを入手したいのですが。ダッシュ [ - ] とブラケット [ ( ] は定数です。
- メソッドstring.IndexOf(string)
と andstring.substring(start,length)
またはの組み合わせでそれらを取得できます。string.split(char)
別の方法は、正規表現を使用することです。しかし、初心者として、何が起こっているのかを理解するのに役立つ文字列機能をお勧めします。正規表現は、初心者にとって理解しやすいものではありません。
msdn でこれらのメソッドの詳細な説明を見つける必要があります。
IndexOf: http://msdn.microsoft.com/de-de/library/k8b1470s(v=vs.110).aspx
サブストリング: http://msdn.microsoft.com/de-de/library/aka44szs(v=vs.110).aspx
分割: http://msdn.microsoft.com/de-de/library/b873y76a(v=vs.110).aspx
関数を使用Substring()
して の必須部分を取得できますString
。
string x = "PU - XX (AYT)";
int end = x.IndexOf("(");
int begin = x.IndexOf("-");
string requiredPart=x.Substring(begin+1, (end - begin)-1);
変数 requiredPart には-
との間の文字列が含まれます(
string str = "PU - XX (AYT)";
int s = str.IndexOf('-');
if(s < 0) //make sure string contains a dash
return "";
else
{
int e = str.IndexOf('(', s + 1) //start looking for bracket
//from this point forward
return (e >= 0? str.Substring(s + 1, e - s) : ""); //ensure it contains a bracket too
}