2016-05-22 12 views
0

"Yes"または "No"の文字列の値と等しい場合、または文字列のパターンと一致する正規表現を使用すべきかどうか(はいまたはいいえ)は、メソッドの戻り値をチェックする必要があります。メソッドの戻り値を文字列の値でチェックする方法は?

私はこのように書くつもりです if((ru.getTest())。equals(( "Yes")||( "No"))) {......

私は進まなければならないのか、間違っているのでしょうか?

これに追加します。

私の質問の詳細な説明を掲載したいと思います。

(ru.getTest()。等号( "はい/ OUI")|| ru.getTest()。等号( "なし/非"))であれば、

それははいだけではなく、一緒に持ちますフランス語のリテラルが追加されました。 (上記の条件が満たされている)のであれば、それはフランスのリテラル部分をトリミングしてのみ「はい」または「いいえ」..

を維持する必要があります私はこれを試してみました:
((ru.getTest()場合(0)、Test.indexOf( '/')、{{0}、{0}、{0}、{ ));

私が間違っている場合は、私に修正してください。

+0

'String s = ru.getTest();を使用します。 if(s.equals( "Yes")|| s.equals( "No")){...} '。大文字と小文字を区別しないためには、 's.equals(...)'の代わりに 's.equalsIgnoreCase(...)'を使います。 – Majora320

+0

基本的には、あなたがやっているように 'equals()'を使ってください。 – markspace

+1

あなたが行うことができる ''( "はい" .equalsIgnoreCase(s)|| "いいえ" .equalsIgnoreCase(s)) ' –

答えて

0

あなたは基本的には書くことができます。

if(ru.getTest().equals("yes") || ru.getTest().equals("no")) 

私は簡単なチェックはequalsを使って、必ずしも正規表現を使用しないことによって行うことができると信じています。 Regexは、より複雑なマッチングシナリオに使用される傾向があります。

+0

ありがとう@ルーシー。私は私の質問の詳細な説明を掲載したいと思います。 || ru.getTest()。equals( "no/non"))、それだけではなく、それに加えられたフランス語のリテラルと一緒です。 (上記の条件が満たされていれば)、フランス語のリテラル部分をトリムし、 'yes'または 'no'だけを保持する必要があります。これで試しました:if((ru.getTest())。equals( "Yes/Oui ")||(ru.getTest())。equals(" No/Non ")){ Test = ru.getTest()。部分文字列(0、Test.indexOf( '/'));それは正しいアプローチですか? –

0

このように書くことができます。

if (ru.getTest().matches("(?i)yes|no")) 

あなただけの一部をトリミングしたい場合は後を含む:

String s = ru.getTest().toLowerCase(); 
if(s.contains("yes") || s.contsins("oui")) { 
    Test = "yes"; 
} else { 
    Test = "no"; 
} 

異なる入力がある場合は、正規表現のための

+0

私のアプローチが正しいかどうかを私の質問の詳細な説明で確認できますか、もう一度尋ねました。 –

+0

答えを更新しました。確認してください。入力が不明な場合は、文字列containsを使用する方が適しています。 –

0

使用matches()正規表現のためs.matchs()メソッドを使用しますスラッシュが発生する可能性があります。最初に何かを確認する必要はありません。

String trimmed = ru.getTest().replaceAll("/.*", ""); 

これはスラッシュがあるかどうかに関係なく動作します。

+0

私のアプローチが正しいかどうかを私の質問の詳細な説明で確認できますか、もう一度尋ねました。 –

+0

@soom私の答えの編集があなたのために働くかどうかを見てください。私はまだあなたの問題が正確であるか理解していません。 – Bohemian

+0

1)getTestメソッドが値 "Yes/Oui"または "No/Non"の文字列を返す場合2)一致する場合は、文字列値の部分を切り捨てます。単にはいまたはいいえ、それは返す必要があり、その戻り値、私は宣言されたローカル変数に格納する必要があります。 –

関連する問題