C#正则表达式获取下拉菜单(select)的相关属性值

 更新时间:2014年07月03日 11:27:07   投稿:junjie  
这篇文章主要介绍了C#正则表达式获取下拉菜单(select)的相关属性值,比如可以获得name属性的值、value值、指定值,需要的朋友可以参考下

给几个在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# foreach获取循环索引的四种方法

    C# foreach获取循环索引的四种方法

    在C#中使用foreach循环的时候我们有时会碰到需要索引的情况,在for循环中我们可以得到循环索引 , foreach并不直接提供 , 下面介绍4种foreach获取索引的方法,希望对大家有用处,需要的朋友可以参考下
    2025-03-03
  • 详解C#如何读写config配置文件

    详解C#如何读写config配置文件

    这篇文章主要介绍了详解C#如何读写config配置文件,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • 基于WPF实现筛选下拉多选控件

    基于WPF实现筛选下拉多选控件

    这篇文章主要为大家详细介绍了如何基于WPF实现简单的筛选下拉多选控件,文中的示例代码讲解详细,对我们学习或工作有一定帮助,感兴趣的小伙伴可以了解一下
    2023-04-04
  • 一个可逆加密的类(使用3DES加密)

    一个可逆加密的类(使用3DES加密)

    表示三重数据加密标准算法的基类,TripleDES 的所有实现都必须从此基类派生。是从 SymmetricAlgorithm 类里继承出来。
    2011-07-07
  • C#中实现在32位、64位系统下自动切换不同的SQLite dll文件

    C#中实现在32位、64位系统下自动切换不同的SQLite dll文件

    这篇文章主要介绍了C#中实现在32位、64位系统下自动切换不同的SQLite dll文件,本文使用C#代码实现DLL文件的切换,需要的朋友可以参考下
    2014-09-09
  • C# Process调用外部程序的实现

    C# Process调用外部程序的实现

    这篇文章主要介绍了C# Process调用外部程序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Unity 从Resources中动态加载Sprite图片的操作

    Unity 从Resources中动态加载Sprite图片的操作

    这篇文章主要介绍了Unity 从Resources中动态加载Sprite图片的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • C#中if语句使用概述

    C#中if语句使用概述

    这里介绍C#使用if语句,C#使用if语句中的表达式必须放在一对圆括号中。除此之外,表达式必须是布尔表达式
    2014-03-03
  • C#实现获取多维数组的行数与列数

    C#实现获取多维数组的行数与列数

    这篇文章主要为大家详细介绍了C#如何分别使用Array.GetUpperBound方法和Array.GetLength方法实现获取多维数组的行数与列数,需要的可以参考下
    2024-02-02
  • C#键盘鼠标钩子实例

    C#键盘鼠标钩子实例

    这篇文章主要介绍了C#键盘鼠标钩子的实现方法,以实例形式分析了针对键盘与鼠标钩子的实现步骤与相关技巧,并配有相关官方文档说明的地址,需要的朋友可以参考下
    2014-12-12

最新评论