// 示例:初始化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("文本框内容不满足任何条件!");
}
标签:string,C#,截取,int,Add,条件,字符串,dataTable,row
From: https://www.cnblogs.com/xynmw/p/18331647