2017-07-10 6 views
-1

** 2つの単語の間に1つのヌル文字が含まれているかどうかを確認したいと考えました。私は新しいです。したがって、この問題のコードサンプルはあまりありません。 **null文字が文章中にエラーを出さないことを確認する方法

文字列の空を判別するためにString.IsNullOrEmptyを使用しました。しかし、私は間違っていました。

お手伝いできますか?

**編集:私のミスには申し訳ありません。この質問には例が必要です。例えば;私はテキストボックスに "It is good"と書いています。 "It"と "is"と "is"と "good"の間のヌル文字を決定します。したがって、エラーメッセージが表示されます。しかし、私は1文字を書くだけでエラーメッセージを表示しません。

PS:このエラーメッセージはラベルを意味します。ヌル文字が含まれている場合は、赤いラベルが表示されます。そうでなければ、グリーンラベル自体を示しています。**

編集2

Public Static bool IsAllLetters(string s) 

{ foreach (char c in s) { if (!char.IsLetter(c) return false; return true; }

私は、文字列に文字が含まれているかいないかどうかを判断します。数字の文字が含まれていると、エラーになります。

とにかく、なぜIsAllLetter関数を使用したのか説明しています。

このコードサンプルを使用しました。コードは、私は変更する必要がありますので、

Bool exp = IsAllLetters(explanation_text.Text); 

İf (exp == false){ // wrong data } 

Else { // correct data } 

、?または、どのようなコードを追加する必要がありますか?

+2

ヌル文字とは何ですか?あなたは '\ 0'を意味しないと思います。 –

+0

ヌル文字はヌル文字列と同じではありません。 – mjwills

+1

[C# - "\ 0"は何を意味するのでしょうか?](https://stackoverflow.com/questions/2292850/c-sharp-what-does-0-equate-to) – mjwills

答えて

0

あなたのコードの書式が少し荒いですが、文字列は1

foreach (char c in s) 
    { if (!char.IsLetter(c) return false; return true; } 

しか上記のコードは、の最初の文字をチェックするよりも長さの方が大きいがある場合には、戻って途中であなたのforeachのように見えます文字列。代わりに、すべての文字がスキャンされた場合にのみIsAllLettersがtrueを返すようにします。

public static bool IsAllLetters(string s) 
{ 
    foreach (char c in s) 
     if (!char.IsLetter(c)) return false; 

    return true; 
} 
+0

文中に2つの単語の間に黒を残したときにエラーメッセージを表示したくありません。 – raskolnikov

関連する問題