C#判断字符串是否满足多个条件中的任意一个条件的逻辑
// 示例:初始化DataTable并填充数据
DataTable dataTable = new DataTable();
dataTable.Columns.Add("Length", typeof(int));
dataTable.Columns.Add("StartIndex", typeof(int));
dataTable.Columns.Add("EndIndex", typeof(int));
dataTable.Columns.Add("Substring", typeof(string));
// 第一笔数据: 內容長度5, 截取開始位置2, 截取結束位置4, 截取內容DK3 dataTable.Rows.Add(5, 2, 4, "AB3");//判断字符串的第2位到第4位是否为AB3 // 第二笔数据: 內容長度6, 截取開始位置1, 截取結束位置3, 截取內容CP7 dataTable.Rows.Add(6, 1, 3, "CD7");//判断字符串的第1位到第3位是否为CD7 // 假设在某个事件处理程序中,比如按钮点击事件,执行检查 string textBoxContent = txt_banchangdaoru.Text; // 获取文本框内容 bool isMatched = false; // 标志位,表示是否匹配了某个条件 // 遍历DataTable的每一行 foreach (DataRow row in dataTable.Rows) { int requiredLength = (int)row["Length"]; // 获取需要的长度 int startIndex = (int)row["StartIndex"]; // 获取截取开始位置 int endIndex = (int)row["EndIndex"]; // 获取截取结束位置 string requiredSubstring = (string)row["Substring"]; // 获取需要匹配的截取内容 // 检查文本框内容长度是否满足当前行的长度要求 if (textBoxContent.Length == requiredLength) { // 截取文本框内容并检查是否与所需截取内容匹配 string substring = textBoxContent.Substring(startIndex-1, endIndex - startIndex+1); if (substring == requiredSubstring) { // 如果满足条件,则设置标志为true并跳出循环 isMatched = true; MessageBox.Show("文本框内容满足条件!"); break; // 跳出循环,因为已经找到匹配项 } } } // 如果循环结束后都没有满足条件的,那么就表示都不满足 if (!isMatched) { MessageBox.Show("文本框内容不满足任何条件!"); }
分类:
NET / C#
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?