c# - 如何在统一的字符串数组列表中查找包含?
问题描述
为什么只包含检查列表中的最后一个数组?当我尝试输入 test1 结果“未找到”。尝试如何包含数组列表中的字符串。
public class FindContainsText : MonoBehaviour
{
public Text text;
public InputField intext;
List<string> guess = new List<string>();
private string answer;
void Start()
{
guess.Add("test1");
guess.Add("test2");
answer="ok";
}
void Update()
{
foreach (string x in guess)
{
if (intext.text.ToLower().Contains(x.ToLower()))
{
text.text = answer;
}
else
{
text.text = "not found";
}
}
}
}
解决方案
当你找到它时,你需要“突破”foreach 循环。否则,您将继续循环遍历元素,因此除非最后一个元素是它,否则它将“找不到”。
foreach (string x in guess)
{
if (intext.text.ToLower().Contains(x.ToLower()))
{
text.text = answer;
break;
}
else
{
text.text = "not found";
}
}
您也可以在这里使用 System.Linq 来帮助您:将它放在文件的顶部。
using System.Linq;
然后使用 Linq 提供的 Contains 扩展方法:
if (guess.Contains(intext.text, StringComparison.OrdinalIgnoreCase))
{
text.text = answer;
}
else
{
text.text = "not found";
}
推荐阅读
- python - 在行列或对角线中找到 4 个
- python - 如何在 Python 中用新字母拆分字符串
- python - 从 pandas 数据框中创建一个“存在-不存在”矩阵
- json - Svelte - 想要热重载处理本地 json 数据文件
- python - Python Selenium seleniumrequests GET 代理执行两次?
- asp.net - OwinMiddleware 中 HttpRequest.PhysicalPath 的等价物是什么?
- angular - 在Angular 12中更改选定收音机的标签背景
- python - 如何下载实际上没有下载链接的文件?
- android - 将数据加载到表单更新sqlite android时出现换行问题
- ag-grid-react - 文本转换在 ag-grid react 中不起作用