正则 群组 Group

本文详细介绍了如何从HTML链接中解析出特定的URL参数,具体以获取订单ID为例进行演示。
  static void Main(string[] args)
        {
            string strUrl = "<a href=\"user.php?act=order_detail&order_id=425044\" target=\"_blank\" class=\"J_MakePoint status\">未付款</a> ";
            var s=GetHTOrderId(strUrl);
            //取到:order_id=425044
            Console.Read();
        }

        private static string GetHTOrderId(string linkUrl)
        {
            string pattern = "<a href=\"user.php?(?<A>.+?)&(?<orderID>.+?)\".*>(?<B>.+?)</a>";
            Regex rr = new Regex(pattern, RegexOptions.IgnoreCase);
            MatchCollection matches = rr.Matches(linkUrl);

            foreach (Match match in matches)
            {
                return match.Groups["orderID"].Value ;
            }
            return "";
        }

 

### JMeter 正则表达式使用教程 #### 创建正则表达式提取器 为了从 HTTP 响应中提取特定的数据,在线程组或其他采样器之后添加 **正则表达式提取器**。此组件允许定义一个模式来匹配并捕获所需的信息。 #### 配置正则表达式提取器 配置过程中需注意几个重要参数: - **名称**: 提取器的名字,方便识别。 - **应用范围 (Apply to)**: 可选整个响应体、URL 或仅限头部等不同部分[^2]。 - **正则表达式 (Regular expression)**: 定义要查找的内容模式。例如 `token":"(.+?)"` 用来获取 JSON 格式的 token 字段值[^4]。 - **模板 (Template)**: 表达为 `$`, 其中 n 是子字符串的位置编号。默认情况下设置为 `$1$` 来表示第一个括号内的捕捉群组。 - **匹配序号 (Match No.)**: 如果页面中有多个相同结构,则通过该选项指定具体哪一个作为目标,默认 `-1` 表示随机选取任意一项。 #### 应用场景实例 假设服务器返回如下 JSON 数据片段: ```json { "session": { "id": "abcde12345" } } ``` 如果希望从中抽取 session id 的话可以这样做: - 设置 **正则表达式** 为 `"id"\s*:\s*"([^"]*)"`. - 将 **模板** 设定成 `$`. 这样就能成功抓取出 `abcde12345` 并将其存储在一个名为 `${sessionId}` 的变量里供后续请求重用[^3]. 另外, 对于固定长度数值比如六位数验证码也可以采用更简单的形式如 `\d{6}`, 这会精确命中连续六个数字字符. ```python import re response_text = '{"session":{"id":"abcde12345"}}' pattern = '"id"\s*:\s*"([^"]*)"' match = re.search(pattern, response_text) if match: extracted_value = match.group(1) print(extracted_value) # 输出 abcde12345 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值