C#正则表达式获取下拉菜单(select)的相关属性值
给几个在C#中,使用正则表达式取页面下拉菜单(select)中的值示例:
//取html中全部 select 的 name
Regex reg_name = new Regex(@"(?<=<select name=\"").*?(?=\"")");//取html中全部<select>项的值
Regex reg_select = new Regex("(?is)<select name=*.*?>]*.*?</select>");//取html中一个 select name 等于"Status"的值
Regex status = new Regex(@"(?is)<select name=\""status\"">]*.*?</select>");
一下是一段完整的代码和方法,取html中一个下拉菜单 select name 等于”Status”的中值,添加到DropDownList中:
string strDoc = (你的html);//取html中一个下拉菜单 select name 等于"Status"的中值
Regex status = new Regex(@"(?is)<select name=\""status\"">]*.*?</select>");
MatchCollection mc_status = status.Matches(strDoc);
getSelectOptions(mc_status, cmbStatus);/// <summary>
/// 取select对列表复制
/// </summary>
/// <param name="selected"></param>
/// <param name="cmb"></param>
void getSelectOptions(MatchCollection selected, ComboBox cmb)
{
if (selected.Count < 1)
return;
txtValues.Text = "";
txtValues.Text = selected[0].Value.Replace("</option>", Environment.NewLine);
string tmpTxt = "";
foreach (string s in txtValues.Lines)
{
if (s == "")
continue;
string a = "";
a = s.Replace("\"", "").Replace("<option value=\"", "");
int x = a.LastIndexOf(">");
tmpTxt += a.Substring(x + 1) + Environment.NewLine;
}
txtValues.Text = tmpTxt.Trim();
cmb.Items.Clear();
cmb.Items.AddRange(txtValues.Lines);
cmb.SelectedIndex = 0;
cmb.Size = cmb.PreferredSize;
}
您可能感兴趣的文章:
- 随手记一次用C#正则表达式获取下拉菜单html标签<select>以及相关属性值
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- [转]正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- 正则表达式相关:C# 抓取网页类(获取网页中所有信息)
- C#运用正则表达式智能获取html模版页中模版信息的应用
- java正则表达式获取指定HTML标签的指定属性值且替换的方法
- c#的正则表达式相关
- C#运用正则表达式智能获取html模版页中模版信息的应用
- HTML解析类 ,让你不使用正则也能轻松获取HTML相关元素 -C# .NET
- 正则表达式获取HTML标记中的内容(C#)
- C#中获取匹配正则表达式的字符
- c#正则表达式获取html超链接
- 正则表达式相关:C# RichTextBox显示html文本内容
- C#正则表达式语法的相关规则
- C#中获取匹配正则表达式的字符
- C#正则表达式匹配相关字符串