/******
*函数名称:strcut
*函数说明:通过左边界、右边界,从字符串中截取子字符串
*注意事项:会申请新的内存,需要手动释放
******/
void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
{
char *st1, *st2;
int result, i = ;
i=strlen(leftStr);
st1 = (char*) strstr(strSrc, leftStr);
if (st1 != NULL){
st1 += i;
st2 = (char*) strstr(st1,rightStr);
if (st2 != NULL){
result = st2 - st1;
*(st1 + result) = '\0';
}
}
if ((st1 == NULL) || (st2 == NULL))
lr_error_message("Error: No substring found for the specified boundary");
else
lr_save_string(lr_eval_string(st1),str);
}

void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
{
char *st1, *st2;
int result, i = ;
i=strlen(leftStr);
st1 = (char*) strstr(strSrc, leftStr);
if (st1 != NULL){
st1 += i;
st2 = (char*) strstr(st1,rightStr);
if (st2 != NULL){
result = st2 - st1;
*(st1 + result) = '\0';
}
}
if ((st1 == NULL) || (st2 == NULL))
lr_error_message("Error: No substring found for the specified boundary");
else
lr_save_string(lr_eval_string(st1),str);
} Action()
{
lr_save_string("{\"code\": \"00000000\", \"msg\": \"成功\", \"transId\": \"f6079c11ac9d463bb219acba8bc3448c\",\"data\": {\"randId\":\"e02a104a4a2f421b93bdb8f6d9daf7c0\"}}","allRes2"); strcut(lr_eval_string("{allRes2}"), "randId", "randId\":\"","\"}"); lr_output_message("randId:%s",lr_eval_string("{randId}")); return ;
}

void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){     

	char *st1, *st2;

	int result, i = 0;

	i=strlen(leftBdry);

	st1 = (char*) strstr(sourceStr, leftBdry); 

	if (st1 != NULL){ 

		st1 += i;

		st2 = (char*) strstr(st1, rightBdry);

		if (st2 != NULL){

			result = st2 - st1;

			*(st1 + result) = '\0';

			}     
}   if ((st1 == NULL) || (st2 == NULL)) lr_error_message("Error: No substring found for the specified boundary"); else   lr_save_string(lr_eval_string(st1), outpuStr); 
} Action()
{ lr_save_string("xyzToken3234344endKey,","test");  web_reg_save_param_custom(lr_eval_string("{test}"), "Outputtest", "Token","endKey");   lr_output_message("切割后的值=%s",lr_eval_string("{Outputtest}"));  return 0;
}

深圳湖北籍软件测试群 275212937

loadrunner通过字符串左右边界提取字符串的更多相关文章

  1. loadrunner通过字符串左右边界切割字符串

    void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){    ...

  2. 字串符相关 split() 字串符分隔 substring() 提取字符串 substr()提取指定数目的字符 parseInt() 函数可解析一个字符串,并返回一个整数。

    split() 方法将字符串分割为字符串数组,并返回此数组. stringObject.split(separator,limit) 我们将按照不同的方式来分割字符串: 使用指定符号分割字符串,代码如 ...

  3. 使用Java正则表达式提取字符串中的数字一例

    直接上代码: String reg = "\\D+(\\d+)$"; //提取字符串末尾的数字:封妖塔守卫71 == >> 71 String s = monster. ...

  4. C++ 提取字符串中的数字

    C++ 提取字符串中的数字 #include <iostream> using namespace std; int main() { ] = "1ab2cd3ef45g&quo ...

  5. [原]Java面试题-将字符串中数字提取出来排序后输出

    [Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...

  6. 【Teradata SQL】从中文数字字母混合字符串中只提取数字regexp_substr

    目标:从中文数字字母的字符串中只提取数字 sel regexp_substr('mint choc中文11国1','\d+')

  7. 提取字符串substring()

    substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法: stringObject.substring(startPos,stopPos)  参数说明: 注意: 1. 返回的内 ...

  8. fortran中提取字符串中可见字符的索引

    fortran中常常需要提取字符串中可见字符的索引,下面是个小例子: !============================================================= su ...

  9. Swift3 Scanner用法之判断是否数字、提取字符串里的数字

    1.判断是否数字 /// 判断是否是数字 /// /// - Parameter string: <#string description#> /// - Returns: <#re ...

随机推荐

  1. TypeScript in 5 minutes

    https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html Let’s get started by build ...

  2. Meson version is 0.44.1 but project requires >=0.45.

    /******************************************************************************* * Meson version is ...

  3. win101903版本vmware 14虚拟机插usb设备卡死

    win101903版本vmware 14虚拟机插usb设备卡死 问题的环境: win10,1903版本: vmware 14 版本: 安装的是ubuntu1604虚拟机: 当插入usb摄像头,并连接到 ...

  4. Spark程序打包

    背景: spark程序,使用scala语言开发.整个项目中包含多个子模块,依赖包文件使用maven来管理. 打包: 方法一:使用artifacts来 选择模块,选择对应的主函数: 点ok保存. 由于s ...

  5. python 一般处理

    #!/usr/bin/env python# -*- coding:utf-8 -*-# Author:afei# QQ:97259460# date = 2019/8/29 s_code1=''s_ ...

  6. 【转载】 CUDA_DEVICE_ORDER 环境变量说明 ( ---------- tensorflow环境下的应用 )

    原文地址: https://www.jianshu.com/p/d10bfee104cc ------------------------------------------------------- ...

  7. Ant Design Pro Vue 时间段查询 问题

    <a-form-item label="起止日期" :labelCol="{lg: {span: 7}, sm: {span: 7}}" :wrapper ...

  8. 微信小程序框架 同时兼容QQ小程序

    最近一直在开发微信小程序,经过几个版本的迭代开发,代码终于能够达到框架级别,动态配置.除了界面有些寒酸以外,功能上还是挺完备的. 主要有以下特点 1.整个程序所需url地址均在api.js中定义,环境 ...

  9. elastalert 用import属性来组织,引入配置

    对应rule的一些公用规则,可以放到一个或者多个头文件中.主的rule yaml文件引入即可.文件名随意,最好别用yaml后缀,要不会被当做一个rule.另外import在rule文件中只能出现一次. ...

  10. c# – Asp.Net Core MVC中Request.IsAjaxRequest()在哪里?

    要了解有关新的令人兴奋的Asp.Net-5框架的更多信息,我正在使用最新发布的Visual Studio 2015 CTP-6来构建一个Web应用程序. 大多数事情看起来真的很有希望,但我似乎找不到R ...