Assuming that
tbl1
is a datatable object, you have to combine
Where
+
Any
method.
So, take a look at example and change your query to your needs.
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("Emp", typeof(int)));
dt.Columns.Add(new DataColumn("Temp", typeof(string)));
dt.Rows.Add(new object[]{100, "S1+S2+S3"});
dt.Rows.Add(new object[]{100, "S1+S2+S3"});
dt.Rows.Add(new object[]{100, "S1+S2+S3"});
dt.Rows.Add(new object[]{100, "S1+S2+S3"});
dt.Rows.Add(new object[]{100, "S1+S2+S3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "Z1+Z2+Z3"});
dt.Rows.Add(new object[]{100, "S1+Z3"});
dt.Rows.Add(new object[]{100, "L1+L2"});
dt.Rows.Add(new object[]{100, "L1+L2"});
dt.Rows.Add(new object[]{100, "A+B"});
dt.Rows.Add(new object[]{100, "C+DD"});
dt.Rows.Add(new object[]{100, "EE+Fin"});
dt.Rows.Add(new object[]{100, "Ke+W"});
string[] values = new string[]{"S1", "S2"};
var qry = dt.AsEnumerable()
.Where(x=> x.Field<string>("Temp")
.Split(new string[]{"+"}, StringSplitOptions.RemoveEmptyEntries)
.Any(y=>values.Contains(y)));
Result:
Emp Temp
100 S1+S2+S3
100 S1+S2+S3
100 S1+S2+S3
100 S1+S2+S3
100 S1+S2+S3
100 S1+Z3