c# の文字列が char の ASCII コードで始まるかどうかを確認するにはどうすればよいですか? 関数 StartsWith は文字列ではなく文字列のみを受け取ります。文字列が 86 の ascii で始まり、91 の ascii で終わるかどうかを知りたいのですが、どうすればこれを達成できますか?
4945 次
7 に答える
6
文字列の char 配列にアクセスすることで、開始と終了を確認できます。
string s = "...";
if ((!String.IsNullOrEmpty(s)) &&
(s[0] == (char)86) && (s[s.Length-1] == (char)91))
// doSomething
于 2012-04-16T13:10:22.077 に答える
5
string.Startswith like を使用できます
bool success = yourString.StartsWith(Char.ConvertFromUtf32(86))
&& yourString.EndsWith(Char.ConvertFromUtf32(91));
于 2012-04-16T13:11:18.557 に答える
1
文字にキャストしてから、文字列にキャストします。
((char) 86).ToString()
または、文字列を直接確認します。
mystring[0] == (char) 86
または:
mystring[0] == '\x56' // in hex
あるいは:
mystring.StartsWith("\x56")
于 2012-04-16T13:10:14.487 に答える
1
キャストなしで、文字を ASCII コードと直接比較できます。
if (str.Length != 0 && str[0] == 86 && str[str.Length-1] == 91) ...
もちろん、文字定数は自然な形の方が見栄えがします。
if (str.Length != 0 && str[0] == 'V' && str[str.Length-1] == ']') ...
于 2012-04-16T13:10:46.710 に答える
0
var startChar = char(86).ToString();
var endChar = char(91).ToString();
if (myString.StartsWith(startCar) && myString.EndsWith(endChar))
{
....
}
StartWith
または、文字を受け取る型文字列の/の独自の拡張メソッドを実装することを整理するEndWith
には:
public static string StartsWith(this string str, char ch)
{
return str.StartsWith(ch.ToString());
}
次に、コードは次のようになります。
myString.StartsWith(char(86)) && myString.EndsWith(char(91))
于 2012-04-16T13:11:31.803 に答える
0
文字列内の ASCII 値で文字をチェックすることは、ほとんどの場合、実際の文字値をチェックすることと同じです。しかし、あなたを啓発するために:
string s = "V4-42$TIh[";
if (s[0] == 86 && s[s.Length - 1] == 91) {
// true
}
特別なことをしたり、関数呼び出しを使用したりする必要はありません。
于 2012-04-16T13:14:13.947 に答える
0
これを使用できますSystem.Convert.ToInt32("Yourstring"[0])
。次のように、文字列の文字をその長さまで渡します。
string Yourstring="test";
string asciivalue="";
の長さまで、次の操作を行います。
asciivalue=System.Convert.ToInt32("Yourstring"[i]);
これにより、対応する ASCII 値が出力されます。
于 2012-04-16T13:17:39.220 に答える