/******
*函数名称: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. win10安装grafana

    1.下载grafana-6.2.5.windows-amd64.msi 2.以管理员身份打开CMD 3.输入 msiexec /i 程序的完整路径 msiexec /i xxx.msi

  2. 【C++】C++中的类模板

    基础的类模板 模板类的继承 内部声明定义普通模板函数和友元模板函数 内部声明友元模板函数+外部定义友元模板函数 声明和定义分别在不同的文件(模板函数.模板友元) C++中有一个重要特性,那就是模板类型 ...

  3. Xamarin图表开发基础教程(13)OxyPlot框架支持的其它图表

    Xamarin图表开发基础教程(13)OxyPlot框架支持的其它图表 除了以上提到的图表外,OxyPlot组件还包含了6种类型的其它图表,分别为等高线图.箱线图.饼图.热图.散点图和散点误差图,如图 ...

  4. Roberts算子

    https://blog.csdn.net/likezhaobin/article/details/6892176 https://zhuanlan.zhihu.com/p/35032299 Robe ...

  5. jQuery TE

    jQuery TE http://jqueryte.com/about ABOUT jQuery TE is a jQuery plugin. It is a lightweight (19.5 KB ...

  6. Des加解密工具

    import java.security.Key; import java.security.Security; import java.util.Date; import javax.crypto. ...

  7. SQL 对比,移动累计

    数据对比 两种常用模型 1.对比下一行,判断增长.减少.维持现状 -- 建表 drop table sales create table sales( num int, soc int ); inse ...

  8. 使用Javascript从Google Places搜索api获取纬度和经度

    如何使用谷歌地图搜索框api从搜索到的位置获取经度和纬度. 我使用与谷歌演示相同的代码 – https://developers.google.com/maps/documentation/javas ...

  9. Vue NGINX Apache 404 问题解决

    location ^~/html/dist { #alias /home/server/webapps/vuejs-admin/; index index.html; try_files $uri $ ...

  10. go 调度机制简介

    goroutine是go中最重要的功能之一,正是因为有了goroutine这样强大的工具,go在并发方面表现的特别优秀. 那么goroutine和普通的线程和协程有什么区别呢?首先,我们需要明白线程和 ...