C# 指示每个匹配记录的关键字匹配次数
如何获取csv文件中每个匹配记录的关键字匹配次数 我需要搜索csv文件中[StringData]中的所有字符,以找到包含单词的记录,以及文本框搜索中StringData中匹配的多次 代码C# 指示每个匹配记录的关键字匹配次数,c#,asp.net,C#,Asp.net,如何获取csv文件中每个匹配记录的关键字匹配次数 我需要搜索csv文件中[StringData]中的所有字符,以找到包含单词的记录,以及文本框搜索中StringData中匹配的多次 代码 您可以向DataTable添加一个新列,并使用以下方法计算每个行的内存值: 另请参见:谢谢您的帮助,兄弟,您真的救了我,但我想问,有没有办法将REGEXP\u计数放入Oledb查询中?所以我不需要再次循环数据 string search = txtBoxSearch.Text;
您可以向DataTable添加一个新列,并使用以下方法计算每个行的内存值:
另请参见:谢谢您的帮助,兄弟,您真的救了我,但我想问,有没有办法将REGEXP\u计数放入Oledb查询中?所以我不需要再次循环数据
string search = txtBoxSearch.Text;
string pathOnly = Path.GetDirectoryName(csvPath);
string fileName = Path.GetFileName(csvPath);
string sql = @"SELECT F1 AS StringID, F2 AS StringContent FROM [" + fileName + "] WHERE F2 LIKE '%" + search + "%'";
using (OleDbConnection connection = new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathOnly +
";Extended Properties=\"Text;HDR=No\""))
using (OleDbCommand command = new OleDbCommand(sql, connection))
using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
{
DataTable dataTable = new DataTable();
adapter.Fill(dataTable);
GridViewResult.DataSource = dataTable;
GridViewResult.DataBind();
}
string search = txtBoxSearch.Text;
string pathOnly = Path.GetDirectoryName(csvPath);
string fileName = Path.GetFileName(csvPath);
string sql = @"SELECT F1 AS StringID, F2 AS StringContent FROM [" + fileName + "] WHERE F2 LIKE '%" + search + "%'";
using (OleDbConnection connection = new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathOnly +
";Extended Properties=\"Text;HDR=No\""))
using (OleDbCommand command = new OleDbCommand(sql, connection))
using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
{
DataTable dataTable = new DataTable();
adapter.Fill(dataTable);
dataTable.Columns.Add("MatchTimes", typeof(System.Int32));
foreach(DataRow row in dataTable.Rows)
{
row["MatchTimes"] = Regex.Matches(row["StringContent"].ToString(), row["StringID"].ToString()).Count
}
GridViewResult.DataSource = dataTable;
GridViewResult.DataBind();
}