Если требуется выполнить только одно из 4 условий, вы уже поступаете правильно. Вам просто нужно добавить два пропущенных условия.
if((thename.ToUpper().Contains("Man".ToUpper())) ||
(thename.ToUpper().Contains("Dog".ToUpper())) ||
(thename.ToUpper().Contains("Cat".ToUpper())) ||
(thename.ToUpper().Contains("Fish".ToUpper())))
{
//do something
}
else
{
//do something else
}
Если необходимо выполнить все 4 условия, вам необходимо связать условия с «&&» вместо «||».
if((thename.ToUpper().Contains("Man".ToUpper())) &&
(thename.ToUpper().Contains("Dog".ToUpper())) &&
(thename.ToUpper().Contains("Cat".ToUpper())) &&
(thename.ToUpper().Contains("Fish".ToUpper())))
{
//do something
}
else
{
//do something else
}
ОБНОВЛЕНИЕ с новым info Если вы хотите проверить, выполняются ли 4 условия x, я бы, вероятно, сделал что-то вроде этого:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class NameTrans : MonoBehaviour {
public string thename;
public GameObject inputField;
public GameObject textDisplay;
public GameObject textDisplay2;
private string[] conditions;
private int counter;
// Use this for initialization
public void Showname () {
thename = inputField.GetComponent<Text>().text;
conditions = {"Man", "Dog", "Cat", "Fish", "Goat",
"Frog", "Bird", "Alligator"};
counter = 0;
foreach(string cond in conditions)
{
if (thename.ToUpper().Contains(cond.ToUpper())
{
counter += 1;
if (counter >= 4)
{
break;
}
}
}
if (counter >= 4)
{
textDisplay2.SetActive(false);
textDisplay.SetActive(true);
textDisplay.GetComponent<Text>().text = "WOrks" ;
}
else
{
textDisplay.SetActive(false);
textDisplay2.SetActive(true);
textDisplay2.GetComponent<Text>().text = "Not WORK" ;
}
}
}