ここにあなたを始めてみましょう。あなたがそれを開発できることを願っています。
boolean english = false;
boolean danish = false;
boolean hopi = false;
boolean mandarin = false;
if (inputString.contains("Languages: ")) {
if (inputString.contains("English")) {
english = true;
}
if (inputString.contains("Danish")) {
danish = true;
}
if (inputString.contains("Hopi")) {
hopi = true;
}
if (inputString.contains("Mandarin")) {
mandarin = true;
}
System.out.println("English? " + english + " Danish? " + danish + " Hopi? " + hopi + " Mandarin? " + mandarin);
}
つ以上または5つの言語がある場合は、おそらく、多分、彼らの上にあなたがサポートする言語を表現するクラスまたは列挙型をいくつかの抽象化をお勧めします。 EnumSet
は、文字列内にどの言語が表示されているかを無視するのに便利でしょうか?
ところで、あなたは正規表現が必要ないことに気付きましたか?
編集:あなたはList<String> languageList
を持っている場合、あなたが好きにしたいことがあります。
Set<String> languagesInInput = new HashSet<>();
for (String language : languageList) {
if (inputString.contains(language)) {
languagesInInput.add(language);
}
}
あなたは、Javaからテキストファイルを検索する方法を求めていますか?もしそうなら、あなたはウェブを検索して例を見つけることができませんでしたか? ---また、[regex '|'構造体(https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#logical)のどの部分があなたを混乱させていますか? – Andreas
いいえ。文字列にテキストがあります。私はそれが似ていると思います。 macthとcontainsをやりかえしたり置き換えたりする方法はわかっていますが、いくつかの文字列を指定する方法はわかりません。どちらもどちらの順序でもかまいません。 – Tony
文字列内にテキストがある場合は、なぜJavaとは別のコマンドラインプログラムである 'grep'を実行したいのですか? ---あなたの文について*「正規表現を使うことができますが、言語を任意の順序でリストする方法はわかりません」*、私は再び質問します:正規表現のどの部分?あなたを混乱させていますか?たぶん正規表現についてもっと詳しく学ぶべきでしょう。 – Andreas